喊7,是一个传统的聚会游戏,
N个人围成一圈,按顺时针从1 - 7
编号,
编号为1
的人从1
开始喊数,
下一个人喊得数字是上一个人喊得数字+1
,
但是当将要喊出数字7
的倍数或者含有7
的话,
不能喊出,而是要喊过。
假定N
个人都没有失误。
当喊道数字k
时,
可以统计每个人喊“过"的次数。
现给定一个长度N
的数组,
存储打乱的每个人喊”过"的次数,
请把它还原成正确顺序。
即数组的第i
个元素存储编号i
的人喊“过“的次数
输入描述
输入为1行空格
分割的喊过的次数,
注意k
并不提供,k
不超过200
数字个数为N
输出描述
输出为1行
顺序正确的喊过的次数,空格分割
示例一
输入
0 1 0
输出
1 0 0
说明
只有1
次过,发生在7
,
按顺序编号1
的人遇到7
,所以1 0 0
,
结束时的k
不一定是7
,也可以是 8
9
,
喊过都是1 0 0
示例二
输入
0 0 0 2 1
输出
0 2 0 1 0
说明
一共3
次喊过
发生在7 14 17
编号为2
的遇到7 17
编号为4
的遇到14
str1=input()
str1=str1.split(' ')
#print(str1)
num=len(str1)
count=0
for i in str1:
count=count+int(i)
count2=0
mn=[]
for i in range(num):
mn.append(0)
for i in range(200):
if str(i).find('7')!=-1 or (i%7==0 and i!=0):
count2=count2+1
flag=i%num-1
mn[flag]=mn[flag]+1
#print(count2)
if count2==count:
break
for i in range(len(mn)):#避免多输出一个空格
if i ==len(mn)-1:
print(mn[i])
else:
print(mn[i],end=" ")