首页 > 编程语言 >常见面试算法题-分苹果

常见面试算法题-分苹果

时间:2024-04-07 19:58:05浏览次数:26  
标签:输出 range 面试 算法 num 苹果 计算 输入

 题目描述

【分苹果】

A、B两个人把苹果分为两堆,A希望按照他的计算规则等分苹果,他的计算规则是按照二进制加法计算,并且不计算进位 12+5=9(1100 + 0101 = 9),B的计算规则是十进制加法,包括正常进位,B希望在满足A的情况下获取苹果重量最多。

输入苹果的数量和每个苹果重量,输出满足A的情况下B获取的苹果总重量。

如果无法满足A的要求,输出-1。

数据范围

1 <= 总苹果数量 <= 20000

1 <= 每个苹果重量 <= 10000

输入描述:

输入第一行是苹果数量:3

输入第二行是每个苹果重量:3 5 6

输出描述:

输出第一行是B获取的苹果总重量:11

以下代码为本人原创,可以供大家参考,若有不足之处,感谢指出!!!!

n = int(input())
num = list(map(int, input().split()))
x = 0
for i in range(n):
    x ^= num[i]
if x == 0:
    num.sort()
    b = 0
    for i in range(1,n):
        b += num[i]
    print(b)
else:
    print(-1)

标签:输出,range,面试,算法,num,苹果,计算,输入
From: https://blog.csdn.net/YW2019/article/details/137475945

相关文章

  • 2024.04.07面试题
    1、js数据类型有哪几种?分别有哪些?这两种数据类型有什么区别? 参考:https://blog.csdn.net/weixin_53248676/article/details/123509676    参考:https://blog.csdn.net/weixin_43664588/article/details/1234048632、说一下深拷贝和浅拷贝,以及它们的区别   ......
  • 10:00面试,10:08就出来了,技术官问我什么是Containerd!
    10:00面试,10:08就出来了,技术官问我什么是Containerd!前言随着Dockershim在Kubernetes1.24版本中的弃用,社区和生态系统正在向容器运行时接口(CRI)的标准化迈进。在这样的转变中,containerd成为了Kubernetes推荐的默认容器运行时。本文将介绍containerd的概念、特点以......
  • 贪心算法
    1、基本概念贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。贪心算法解决问题的策略是:做出选择时,每次都选择对当前状态最优的解,而不考虑整个问题的解空间。它通常用来解决最优化问题,如最小生成树、哈夫曼编......
  • 调度算法
    调度算法评价指标CPU利用率由于早期的CPU造价极其昂贵,因此人们会希望让CPU尽可能多地工作CPU利用率:指CPU“忙碌”的时间占总时间的比例。Eg:某计算机只支持单道程序,某个作业刚开始需要在CPU上运行5秒,再用打印机打印输出5秒,之后再执行5秒,才能结束。在此过程中,CPU利用率、打......
  • 【算法】数论
    题目链接前言疑似是有点不会数学了,照着题解推式子都推了小半个下午,还看不出来减法公式,唉。题解考虑把这些\(f(a,b)\)异或起来再模一个数不会有很好的性质,所以要把每一个\(f(a,b)\)都算出来。由加法公式得\[f(a,b)=\sum\\tbinom{b}{i}\tbinom{n-i}{a}\]\[=\sum\tbin......
  • 排序算法——快速排序
    问题描述 现有一组数据:23,45,18,11,13,79,72,25,3,17,请使用快速排序算法将它们按照从小到大的顺序排列。算法思想(1)在无序数据中选一个基准数(通常为数据第一个);(2)将数据中小于基准数的数据移到基准数左边,大于基准数的移到右边;(3)对于基准数左、右两边的数据,不断重复以上两个......
  • 贪心算法|1005.K次取反后最大化的数组和
    力扣题目链接classSolution{staticboolcmp(inta,intb){returnabs(a)>abs(b);}public:intlargestSumAfterKNegations(vector<int>&A,intK){sort(A.begin(),A.end(),cmp);//第一步for(inti=0;i<A.size......
  • 操作系统综合题之“采用动态分区分配算法下的3种算法(首次适应算法、循环首次适应算法
    一、问题:当空闲链如下图,第一个空闲分区起始地址为20KB,大小为120KB;第二个空闲分区起始地址为200KB,大小为100KB;第三个空闲分区起始地址为400KB,大小为60KB。若某进程P1先申请大小为30KB的内存空间,随后进程P2再申请大小为20KB的内存空间,画出给P1分配完之后的空闲链和给P2分配完......
  • 28个关于PHP核心技术的面试题,助力跳槽!
    1oop是什么?答:oop是面向对象编程,面向对象编程是一种计算机编程架构,OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP具有三大特点1、封装性:也称为信息隐藏,就是将一个类的使用和实现分开,只保留部分接口和方法与外部联系,或者说只公开了一......
  • 强化学习算法性能表现
    各算法在不同环境中的表现:来自天寿基准测试https://tianshou.org/en/stable/01_tutorials/06_benchmark.html1.HalfCheetah-v3SAC>DDPG>TD3>PPO>TRPO>NPG>ACKTR>A2C>REINFORCE2.蚂蚁v3SAC>TD3>A2C>PPO>......