【数学】任意相连为整数均值
数学 任意相连为整数均值
题目
概述
有n个架子,每个架子上有k个商品。这k个商品,它的任意相连的组合,均值需要是整数
思路
首先,因为任意相邻除以2需要是整数,因此,一定是奇数一组,偶数一组。
再仔细想,若是需要任意相连的组合均值需要是整数,则需要该组数据能够组成满足d = n的等差数列。构造等差的方法可以用按货架一个一个放置。
因此,如果有奇数组货架,那么必然存在一组相邻数为(1 + n + 1)/ 2,结果非整数。而偶数组货架就不存在这种问题。
但事实上,上一种是建立在,至少有两种商品的前提下。所以还有一个需要注意的点,就是当k = 1的时候,也是符合条件的。
**原思路问题
原来的思路没有进行上述的逻辑性思考,比较随意地按规律寻找,所以出了一些纰漏,分类的方式也有一点错误,wa了4发后就直接摆烂睡觉了()
补题的时候有wa了一发,看了错误才意识到自己错哪了....嗯...确实挺锻炼我思维的hhh
题解
python
for i in range(n):
m, k = map(int, input().split())
if k == 1:
print("YES")
for j in range(1, m + 1):
print(j)
elif m % 2 == 0:
print("YES")
for j in range(1, m+1):
for o in range(0, k):
print(j + m * o, end=" ")
print()
else:
print("NO")