HXY玩卡片

HXY玩卡片

题目描述

HXY得到了一些卡片,这些卡片上标有数字0或5。现在她可以选择其中一些卡片排成一列,使得排出的一列数字组成的数最大,且满足被90整除这个条件。同时这个数不能含有前导0,即0不能作为这串数的首位。如果不能排出这样的数,输出“-1”。

输入输出格式

输入格式:

第一行,卡片的个数n。

第二行,分别给出了这n个数(只能为数字5或0)。

输出格式:

仅一行,如果可以排出,则输出这个数。否则输出“-1”。

输入输出样例

输入样例#1:

4
5 0 5 0

输出样例#1:   0

输入样例#2:  

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

输出样例#2:   5555555550


众所周知
一个数想被9整除
必须各位上面的数之和是九的倍数
所以必须本题中5的个数大于等于九个
而且必须是九的整数倍个

 

#!/usr/bin/env python
# -*- coding: utf-8 -*-
n = input()
n = int(n)
card = input().split()
cnt = 0
judge = False
for i in range(0, n):
    card[i] = int(card[i])
    if card[i] == 5:
        cnt += 1;
for i in range(0, n):
    if card[i] == 0:
        judge = True
#print(cnt)
#print(judge)

if judge==True:
    if cnt>=9:
        card.sort(reverse = True)
        temp = int(cnt/9)
        r = temp*9
        #print(card)
        for i in range(cnt-r, n):   #就是这里,一开始写成n-r-1,死活想不明白
            print(card[i], end='')
    else:
        print('0')
else:
    print('-1')
    

看起来好像又被我整麻烦了的亚子

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章