题目
参考
给定
0
−
9
0-9
0−9这些数字的电子表示(7根帮子组成),给出n个电子数,添加k个棒子上去,使得最终的数最大。不能构造出数,输出-1。最终的数允许前缀0,但保持总个数为
n
n
n。
思路:预处理,从低位往前标记,将可达状态置1;完毕后
c
h
e
c
k
check
check最终是否有数存在,没有输出-1,否则从高位往低位枚举,每次贪心选择最大数。
#include
using namespace std;
const int maxn = 2010;
const string Num[10] = {"1110111", "0010010", "1011101", "1011011", "0111010", "1101011", "1101111", "1010010", "1111111", "1111011"};
int num[10];
int a[maxn];
int n,k;
char s[10];
void init() {
for(int i = 0;i
关注
打赏
热门博文
