灌水(python实现)

来源:互联网 发布:画平面示意图软件 编辑:程序博客网 时间:2024/05/14 23:26

灌水

Time limit per test: 1.0 seconds

Memory limit: 256 megabytes

时间转眼来到了 ECNU 校赛的前夜,ECNU 校赛命题组在紧锣密鼓地进行最后的题目测试以及题目顺序安排,然而在重新看了一遍题目之后,cdm 发现,大一的题目太难了,于是他准备去掉一道中档构造题并换上两道简单题,也就是灌水。

ECNU 校赛总共有n道题按照题目排列顺序给出,每道题的难度可以表示为一个 15之间的整数,其中难度为1的是简单题,难度为24的为中档题,难度为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
31 2 341 1 5 542 3 3 3
Output
1 1 1 3Deep Dark Fantasy of ECNU1 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,cdef main():    a,c=get_data()    flag=0    for i in a:        m=c[flag:flag+i]        cal(m)        flag+=idef 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()