小红取数
时间限制:1秒 空间限制:256M
描述
小红拿到了一个数组,她想取一些数使得取的数之和尽可能大,但要求这个和必须是 k 的倍数。
你能帮帮她吗?
输入描述:
第一行输入两个正整数 n 和 k
第二行输入 n 个正整数 ai1≤n,k≤10**31 ≤ ai ≤ 1 0 **10输出描述:
如果没有合法方案,输出 - 1。
否则输出最大的和。

我写的比较简单和直观的 代码如下:

while True:n,k=map(int,input().strip().split(' '))if n >= 1 and n <= 10**3 and k >= 1 and k <= 10**10:breakelse:print('n或k输入超过范围1≤n,k≤10**3,1 ≤ ai ≤ 1 0 **10')# arr = [int(input()) for _ in range(n)]
arr=[13,14,17,1,2]#list(map(int,input().split(' ')))
# arr=list(map(int,input().strip().split(' ')))while True:arr=list(map(int,input().strip().split(' ')))if n == len(arr):breakelse:print('输入{}个数:'.format(n))# print(n,k,arr)'''求数组的所有子集res'''
res=[[]]
for i in arr:# print('i=',i)for j in res[:]:# print('j,x==',j)x=j[:]x.append(i)# print('x==', x)res.append(x)# print('res===',res)
print(res)'''求各子集元素和的最大值,并降序排列'''
res1={}
for i in range(len(res)):res1[i]=sum(res[i])
res1=dict(sorted(res1.items(), key=lambda x: x[1], reverse=True))
print(res1)'''取能够被K整除的最大值'''
result=-1
for i in res1:if res1[i]%k==0 and res1[i]!=0:result=res1[i]print(i,res1[i],res[i])breakprint(result)

小红拿到了一个数组,她想取一些数使得取的数之和尽可能大,但要求这个和必须是 k 的倍数。你能帮帮她吗?相关推荐

  1. 给定一个数组,求如果排序之后,相邻两数的最大差值,要求时间复杂度O(N),且要求不能用非基于比较的排序。

    给定一个数组,求如果排序之后,相邻两数的最大差值,要求时间复杂度O(N),且要求不能用非基于比较的排序. import java.util.Arrays;public class MaximumDif ...

  2. vba 跳到下一个循环_VBA野知识分享:从一个数组中取部分值生成新数组,不使用循环的思路...

    从一个数组中取部分值生成新数组,要实现此需求通常都是采用循环的方法来完成,那有没有更简易的思路呢? 借用jscript可以实现,直接取值,不用循环.例如从100000万中元素是取8000个值出来生成新 ...

  3. 【JD算法题】定义一个数组的权值为,该数组最大值的出现次数。求长度为n且每个元素范围都在[1,n]的所有数组的权值之和。

    Problem 小红定义一个数组的权值为,该数组最大值的出现次数. 例如[2,3,3,4]的权值为1,[2,3,3,3]的权值为3. 小红想知道,长度为n,且每个元素范围都在[1,n]的数组(显然有n ...

  4. 从一个数组中找出 N 个数,其和为 M 的所有可能--最 nice 的解法

    比起讨论已经存在的大牛,我们更希望有更多有潜力的前端小伙伴成为大牛,只有这样,前端在未来才能够持续不断的发光发热. 故事的背景 这是一个呆萌炫酷吊炸天的前端算法题,曾经乃至现在也是叱咤风云在各个面试场 ...

  5. .NET(C#) Internals: 以一个数组填充的例子初步了解.NET 4.0中的并行(二)

    引言 随着CPU多核的普及,编程时充分利用这个特性越显重要.上篇首先用传统的嵌套循环进行数组填充,然后用.NET 4.0中的System.Threading.Tasks提供的Parallel Clas ...

  6. 如何在Python中声明一个数组?

    如何在Python中声明数组? 我在文档中找不到任何对数组的引用. #1楼 这个怎么样... >>> a = range(12) >>> a [0, 1, 2, 3 ...

  7. 能否向函数传递一个数组?

    能否向函数传递一个数组? 例: void fun(char a[10])  {     char c = a[3];  } int main() {     char b[10] = "ab ...

  8. dataframe筛选数据根据某一个列的数据在另外的一个数组中

    对dataframe中的数据进行筛选.想要根据某一列的数据比如要在另外的一个数组中,这时,就需要用到dataframe中比较经典的函数了isin()函数. 函数会返回一个bool型的dataframe ...

  9. python中如何定义一个数组_Python数组定义方法

    本文实例讲述了Python数组定义方法.分享给大家供大家参考,具体如下: Python中没有数组的数据结构,但列表很像数组,如: a=[0,1,2] 这时:a[0]=0, a[1]=1, a[[2]= ...

  10. php 把数组赋给另一个数组,php将一个数组附加到另一个数组(不是array_push或+)

    如何在不比较键的情况下将一个数组附加到另一个数组? $a = array( 'a', 'b' ); $b = array( 'c', 'd' ); 最后应该是:Array( [0]=>a [1] ...

最新文章

  1. ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64)
  2. c语言指针索引数组,C语言数组指针表示法
  3. MogDB与PostgreSQL分区策略语法测试
  4. mysql hash索引_mysql hash索引
  5. VC++2010安装教程
  6. pytorch时空数据处理4——图像转文本/字幕Image-Captionning(二)
  7. java jxl.jar_jxl.jar官方下载-jxl.jar(java操作excel) 免费版 - 河东下载站
  8. 电商营销方式抢购,秒杀Redis原子减decr方法作为剩余库存判断条件的实现方式(1)
  9. Vue 插件开发与发布
  10. qq自动发消息python脚本_python实现定时发送qq消息
  11. vue移动端获取定位_关于关于vue移动端经纬度定位以及POI检索周边小区
  12. 怎样才能无需训练也能成为武林高手
  13. Centos7 压缩文件
  14. 悉尼大学INFO1112Assignment1课业解析
  15. 健身房会员管理系统(Java+Web+MySQL)
  16. 5.3.2 jmeter组件-线程组:setUp线程组和tearDown线程组
  17. 被各种手机浏览器的推荐烦死,推荐一种干净、有效的浏览器操作
  18. 2020豆瓣电影首页热门电影+热门电视剧 API
  19. 货郎担问题java算法_迷宫最短路径-货郎担问题的解决思路
  20. 卷积神经网络的反向传播,卷积反向传播过程

热门文章

  1. 小白白红队初成长(4)文件的面纱
  2. SumatraPDF 高级设置
  3. 转://Oracle 11gR2 硬件导致重新添加节点
  4. JAVA学习路线图---(JAVA1234)
  5. 面板模型进行熵值法分析
  6. hihoCoder1378 (最大流最小割)
  7. centos7 80端口被占用导致nginx或httpd无法启用的解决方法
  8. Python检测字符串是否只含“空白字符”
  9. 电源管理允许此设备唤醒计算机怎么关掉,允许计算机关闭此设备以节省电量灰色 | MOS86...
  10. AEMDA: Inferring miRNA-disease associations based on deep autoencoder