Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
74218 | 陈路垚 | 火柴棒 | C++ | 通过 | 100 | 0 MS | 252 KB | 478 | 2023-05-20 17:29:03 |
#include<bits/stdc++.h> using namespace std; long long dp[105]; int f[15],n; int main(){ f[1]=2; f[2]=5; f[3]=5; f[4]=4; f[5]=5; f[6]=6; f[7]=3; f[8]=7; f[9]=6; f[0]=6; dp[2]=1; dp[3]=7; dp[4]=4; dp[5]=2; dp[6]=6;dp[7]=8; for (int i=8;i<=100;i++){ dp[i]=dp[i-f[0]]*10; for (int j=0; j<=9; j++) if (dp[i-f[j]]!=0) dp[i]=min(dp[i],dp[i-f[j]]*10+j); } cin>>n; cout<<dp[n]<<' '; if (n%2==1) {cout<<7; n-=3;} while (n){cout<<1; n-=2;} return 0; }