Think: 1.观察规律可以发现,尽量满足位数优先,若位数一样则考虑可以选择的较大的数字,将其放于最高位 2.n值相对较大,建议直接输出结果
Problem Description
众所周知,和泉纱雾是著名的埃罗芒阿老师,画画功力首屈一指。今天我们的埃罗芒阿老师又开启了天真无邪嗨嗨嗨的模式。 她现在想要画一些数字(不包括 0),然后她现在有染料 n。对于每个数字消耗的染料: 如图所示:分别对应 2,5,5,4,5,6,3,7,6。 现在纱雾想知道的是她能画出的最大的十进制的数是多大。
Input 输入数据有多组(数据组数不超过 100),到 EOF 结束。 对于每组数据,输入一行,包含一个整数 n (0 <= n <= 100000)。
Output 对于每组数据,如果纱雾画不出数字,请输出 “QAQ”(不包括引号),否则输出纱雾能画出的最大的数字。
Example Input 4
Example Output 11
Hint 她有染料 4,可以选择涂两个 1 或者 1 个 4。很明显 11 > 4。所以应当画 11。
Author UMR
以下为Accepted代码
#include <bits/stdc++.h> using namespace std; int main() { int n, i, t; while(scanf("%d", &n) != EOF) { if(n <= 1) printf("QAQ\n"); else { t = n/2; if(n%2 != 0) { printf("7"); t -= 1; } for(i = 0; i < t; i++) printf("1"); printf("\n"); } } return 0; } /*************************************************** User name: Result: Accepted Take time: 16ms Take Memory: 208KB Submit time: 2017-05-05 17:28:09 ****************************************************/