首页 > 编程语言 >算法题练习,Solo和koko分糖 ,整数拆分, Cookies 分饼干

算法题练习,Solo和koko分糖 ,整数拆分, Cookies 分饼干

时间:2022-09-02 23:35:15浏览次数:65  
标签:Solo Cookies console 分糖 map item num let split

目录

1. Candy Solo和koko分糖

如果可以分给弟弟,必定满足全部异或为0,找出最小的一个给弟弟

function handle1(input) {
    let [num, map] = input.split("\n");
    map = map.split(/\s+/).map(a => Number(a));
    let r = map.reduce((prev, next) => prev ^ next)
    if (!!r) {
        console.log("NO");
    } else {
        map.sort((a, b) => a - b)
        map.shift();
        let sum = map.reduce((prev, next) => prev + next)
        console.log(sum);
    }
}

function handle2(input) {
    let array = input.split("\n")[1].split(' ');
    let sum = !eval(array.join('^')) && (eval(array.join('+')) - Math.min(...array)) || 'NO';
    console.log(sum);
}

// handle('3\n3 5 6')
// handle('5\n1 2 3 4 5')
// handle('8\n7258 6579 2602 6716 3050 3564 5396 1773')
handle('10\n656660 476531 89825 757604 876771 923382 842461 898174 923083 760991')

2. 整数拆分 3=1+1+1 3=1+2 3=3

 function handle(input){
    let inputArray = input.split('\n');
  inputArray.forEach(item =>{
      change(item)
  })
}
function change(n, total = n, i = 1, s = '') {
    if (total <= 0) return console.log(s);
    for (let j = i; j <= total; j++) {
        change(n, total - j, j, s === '' ? `${n}=${j}` : `${s}+${j}`);
    }
}
handle("3\n4")

3. Cookies 分饼干

function cookies(arr) {
    let map = arr.filter((item, index) => index % 2 === 1)
    map.forEach(item => {
        let itemArr = item.split(' ').map(num => Number(num))

        let r = itemArr.reduce((prev, next) => prev + next)
        if (r % 2 == 0) { // 累加和是偶数,剔除偶数元素的个数
            console.log(itemArr.filter(num => num % 2 === 0).length);
        } else { // 反之剔除奇数
            console.log(itemArr.filter(num => num % 2 !== 0).length);
        }
    })
}
function cookies1(arr) {
    let map = arr.filter((item, index) => index % 2 === 1)
    map.forEach(item => {
        let oddNum = item.split(' ').filter(num => num % 2 !== 0).length
        console.log(oddNum % 2 != 0 ? oddNum : item.split(' ').length - oddNum);
    })
}
cookies(['1', '1', "10", "1 2 2 3 4 4 4 2 2 2", '2', '1 1'])
cookies1(['1', '1', "10", "1 2 2 3 4 4 4 2 2 2", '2', '1 1'])

标签:Solo,Cookies,console,分糖,map,item,num,let,split
From: https://www.cnblogs.com/echoyya/p/16651668.html

相关文章

  • python脚本获取网页第3方登录的cookies
    以企业微信tapd网站为例,登录需要通过企业微信扫码,本文将讲述通过python脚本实现获取第3方登录cookies并将其保存到pc本地的方法,示例代码如下:fromseleniumimportwebdri......
  • cookies加密__搜狗微信
    #coding=utf-8importrequestsfromlxmlimportetreeimportreimportrandomimportjsonfromurllibimportparsedefget_cookie(response1,uigs_para,UserAgent):......
  • Flask 学习-31.flask_jwt_extended 验证token四种方headers/cookies/json/query_stri
    前言用户携带授权token访问时,其jwt的所处位置列表,默认是在请求头部headers中验证。可以通过JWT_TOKEN_LOCATION进行全局配置,设置token是在请求头部,还是cookies,还是json,......
  • Solon 问答: 怎么切换环境配置?
    #应用配置文件活动选择(可用于切换不同的环境配置)solon.env:dev#例:#app.yml#应用主配置(必然会加载)#app-dev.yml#应用dev环境配置#app-pro.yml#应用pro......
  • Django入门到放弃之cookies
    1.获取Cookierequest.COOKIESrequest.COOKIES['key']#获取带签名的cookierequest.get_signed_cookie(key,default=RAISE_ERROR,salt='',max_age=None)#获取sign......
  • 一本通 例2.17 分糖果
    #include<iostream>intmain(){intcan[5];for(inti=0;i<5;i++)std::cin>>can[i];for(inti=0;i<5;i++){intarv=can[i]/3;......
  • 1.一本通 例2.17 分糖果
    某幼儿园里,有5个小朋友编号为1、2、3、4、5,他们按自己的编号顺序围坐在一张圆桌旁。他们身上都有若干个糖果(键盘输入),现在他们做一个分糖果游戏。从1号小朋友开始,将自己......
  • P7909 [CSP-J 2021] 分糖果
    题目描述红太阳幼儿园有 nn 个小朋友,你是其中之一。保证 n\ge2n≥2。有一天你在幼儿园的后花园里发现无穷多颗糖果,你打算拿一些糖果回去分给幼儿园的小朋友们。由......
  • 一本通 例2.17 分糖果
    某幼儿园里,有5个小朋友编号为1、2、3、4、5,他们按自己的编号顺序围坐在一张圆桌旁。他们身上都有若干个糖果(键盘输入),现在他们做一个分糖果游戏。从1号小朋友开始,将自己......
  • 一本通 例2.17 分糖果 分析
    用一维数组存储苹果数循环读入当前苹果数按规则进行分苹果最后循环输出代码:#include<iostream>#include<iomanip>usingnamespacestd;intmain(){   inta[7],b;......