- problem link:here!!
- 题意:s(x)=x的所有组成数字之和。依题意需满足s(a)>=n,s(b)>=n,s(a+b)<=m.。只需构造得到s(a)最大s(a+b)最小即可。
- AC code:
#include<bits/stdc++.h>
using namespace std;
const int N=2e2;
string a,b;
int main(){
for(int i=1;i<=N;i++)a.push_back('9'),b.push_back('0');
b[0]='1';for(int i=1;i<=N;i++)b.push_back('9');
reverse(a.begin(),a.end());reverse(b.begin(),b.end());
cout<<a<<endl<<b<<endl;
}

博客围绕Codeforces上的一道构造题展开,给出题目链接,题意为s(x)是x所有组成数字之和,需满足s(a)>=n、s(b)>=n、s(a+b)<=m,解题思路是构造出s(a)最大且s(a+b)最小的情况,并给出了AC代码。
1239

被折叠的 条评论
为什么被折叠?



