c题求解答

n,k=map(int,input().split())

a=list(map(int,input().split()))

count=0

for i in range(len(a)):

if a[i]%k==0:

count+=1

a[i]=0

a.sort()

for i in range(count,len(a)):

for j in range(i+1,len(a)):

if (a[i]+a[j])%k==0:

count+=1

a[i]=0

a[j]=0

print(count)

我的代码哪有错误,求大佬解答

全部评论
你这个有重复计算的情况
点赞 回复 分享
发布于 2023-11-05 21:07 福建
类似于这样(c++): for (int i = 1; i <= l; i ++ )         for (int j = i + 1; j <= l; j ++ )             if (e[i] + e[j] == k) {                 ans ++ ;                 swap(e[j], e[l]);                 l -- ;                 swap(e[i], e[l]);                 l -- ;                 i -- ;                 break;             }
点赞 回复 分享
发布于 2023-11-05 20:42 河南
应该把这两个数删掉
点赞 回复 分享
发布于 2023-11-05 20:41 河南
0 % 3 == 0
点赞 回复 分享
发布于 2023-11-05 20:40 河南
卷子用了就不能再写了,你这重复了,可以看一手我的题解,(●'◡&(30209)#39;●)
点赞 回复 分享
发布于 2023-11-05 20:40 湖南

相关推荐

05-23 19:33
重庆大学 Java
只学了传统后端,马上去后端实习了,在想要不要学习agent开发相关的。27秋招和26相比难度如何?
我连备胎都不是却还在...:就暑期实习而言,大厂官宣hc 比 26 多,但是我观察看应该低于 26 的,估计秋招也不简单
点赞 评论 收藏
分享
点赞 评论 收藏
分享
04-15 13:42
四川大学 Java
蹲蹲offerrr:快投吧,有点晚现在
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务