HXY玩卡片(水题测试2017082401&洛谷2192)

来源:互联网 发布:cms远程监控设置 编辑:程序博客网 时间:2024/06/03 13:19

题目链接:HXY玩卡片
很水,
简单讲一下思路。
如果没有0,直接无解,因为不可能是10的倍数。
是9的倍数,则各个数位上的数字和为9的倍数,所以5的数量一定是9的倍数,所以只要尽可能多输出9的倍数个5,然后把0全放后面就行。
下面给代码:

#include<bits/stdc++.h>using namespace std;int main(){    int n;    int nz=0,nf=0;    scanf("%d",&n);    for(int i=0;i<n;i++){        int x;        scanf("%d",&x);        if(x==0){            nz++;        }else{            nf++;        }    }    if(nz==0){        printf("-1");    }else{        int x=nf/9;        if(x==0){            printf("0");        }else{            for(int i=0;i<x*9;i++){                printf("5");            }            for(int i=0;i<nz;i++){                printf("0");            }        }    }    return 0;}