插件素材网站,wordpress怎么去掉,单招网站开发基础知识,施工企业总工程师述职报告题目传送门
引
题目的描述很形象#xff0c;梦回童年#xff0c;注意一下火柴全部都用完
解法
显然 DP ,
设计状态#xff1a; f i : 用完 i 根木棒凑出的最大数 f_i:用完i根木棒凑出的最大数 fi:用完i根木棒凑出的最大数
状态转移#xff1a; f i → f i c n t …题目传送门
引
题目的描述很形象梦回童年注意一下火柴全部都用完
解法
显然 DP ,
设计状态 f i : 用完 i 根木棒凑出的最大数 f_i:用完i根木棒凑出的最大数 fi:用完i根木棒凑出的最大数
状态转移 f i → f i c n t j 即枚举下一个加入的数 j , 取 max f_i\to f_{icnt_j} 即枚举下一个加入的数j,取\max fi→ficntj即枚举下一个加入的数j,取max
Code
#include iostream
#include cstring
#include vector
using namespace std;
typedef long long ll;
const int N1e410;
int n,m;
int cnt[]{0,2,5,5,4,5,6,3,7,6};
string f[N];
vectorint num;
int main() {scanf(%d%d,n,m);for(int i1,x;im;i) {scanf(%d,x);num.push_back(x);}for(int i0;in;i) {for(int x:num) {if(i f[i].empty()) continue;string s1f[i]char(x0),s2char(x0)f[i],tmp;tmp(s1s2)?s1:s2;if(tmp.size()f[icnt[x]].size()) f[icnt[x]]tmp;else if(tmp.size()f[icnt[x]].size()) f[icnt[x]]max(tmp,f[icnt[x]]);}}coutf[n]\n;
}