这题容易犯的错误:
判断质数时容易超时
当m为负数时如果使用for循环会报错
参考代码:
n, k = map(int, input().split()) user = list(map(int, input().split())) user.sort() #对列表进行排序(从小到大) m = user[-k] - user[k - 1] m_t = abs(m) #获取m的绝对值 for i in range(2, int(pow(m_t, 0.5) + 1)): if m_t % i == 0: print("NO") break else: print("YES") #for-else语句,当if都不成立时,会使用else print(m)
ps:
sort(reverse = False)函数,可以对列表进行排序。其中有一个参数reverse,默认为False,此时为从小到大排序;当改为reverse =True时,为从大到小进行排序
abs()是取一个数的绝对值
0.0分
2 人评分
C语言训练-斐波纳契数列 (C语言代码)浏览:826 |
汽水瓶 (C语言代码)浏览:764 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:781 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:687 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:609 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:943 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:651 |
整除的尾数 (C语言代码)浏览:852 |
杨辉三角 (C语言代码)浏览:734 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:538 |