灌水
Time limit per test: 1.0 seconds
Memory limit: 256 megabytes
时间转眼来到了 ECNU 校赛的前夜,ECNU 校赛命题组在紧锣密鼓地进行最后的题目测试以及题目顺序安排,然而在重新看了一遍题目之后,cdm 发现,大一的题目太难了,于是他准备去掉一道中档构造题并换上两道简单题,也就是灌水。
ECNU 校赛总共有n道题按照题目排列顺序给出,每道题的难度可以表示为一个 1 到 5 之间的整数,其中难度为 1 的是简单题,难度为 2 到 4 的为中档题,难度为 5 的是难题。
如果没有中档难度的题目,请输出 Deep Dark Fantasy of ECNU
。如果存在中档难度的题目,请将第一个中档题换为两道简单题并按顺序输出现在所有题目的难度。(注意其他题目仍然需要保持原来的顺序,新加的题目应在删去的中档题处)
Input
多组输入,循环读入。
每组数据的第一行n(1<=n<=50)为题目的个数。
接下来一行给出 n个整数a1,a2,a3....an为每题的难度。范围为【1,5】
Output
对于每组数据,输出一行:
- 如果没有中档难度的题目,请输出
Deep Dark Fantasy of ECNU
。 - 如果有中档难度的题目,请按顺序输出灌水之后所有题目的难度,整数和整数之前用空格隔开。
答案比对忽略行末空格。
Examples
Input
3 1 2 3 4 1 1 5 5 4 2 3 3 3
Output
1 1 1 3 Deep Dark Fantasy of ECNU 1 1 3 3 3
Source
2017 华东师范大学校赛
python3 实现 :
def get_data():
a=[]
c=[]
while True:
try:
n=eval(input())
a.append(n)
str_in = input()
b = [int(n) for n in str_in.split()]
c.extend(b)
except:
break
return a,c
def main():
a,c=get_data()
flag=0
for i in a:
m=c[flag:flag+i]
cal(m)
flag+=i
def cal(m):
dif=[]
flag=0
for i in m:
if i!=1 and i!=5:
if flag==0:
dif.extend([1,1])
else:
dif.append(i)
flag+=1
else:
dif.append(i)
if flag==0:
print("Deep Dark Fantasy of ECNU")
else:
str1=""
for j in dif:
str1=str1+str(j)+' '
print(str1)
main()