python oj1038: 卡片选择

  • Post author:
  • Post category:python


1038: 卡片选择


题目描述


穗乃果有 n 张卡片,每张卡片上要么是 0,要么是 5 ,穗乃果能从其中选出若干卡片然后组成一些数字,你能找出所有可能的数字中能整除 90 的最大数字吗?若不存在,请输出 -1 。


输入


第一行包含一个正整数n(1<=n<=103)。


接下来一行包括n个正整数ai(ai=0, 5).


输出


输出一个整数表示结果。


样例输入

11
5 5 5 5 5 5 5 5 0 5 5


样例输出

5555555550
#1038: 卡片选择
import re
import string
n=int(input())
s=input()
a=len(re.findall('5',s))
b=n-a
if b==0:#先判断有没有0,要想被90整除,至少一个0,然后其它的5相加得能整除9
    print(-1)
else:
    drag=0
    for i in range(a,-1,-1):
        if i*5%9==0:
            drag=1
            t="5"*i+"0"*b
            t=int(t)
            if t!=0:
                print(t)
            elif t==0:
                print(0)#虽然但是,这个0应该是不对的,但是系统这么提交才得分
            break
    if drag==0:
        print(-1)



版权声明:本文为m0_63352623原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。