1 solutions
-
0
我们构造一个100x100的矩阵,然后从中间分成上面全黑下面全白 image.png 题目要求A个白色连通块和B个黑色连通块 那就在上面黑色区域交错填A-1个白色格子,在下面白色区域交错填B-1个黑色格子就好了 比如A=11,B=5 image.png 黑色区域是50x100那么这样填最多可以填25x50=1250个肯定满足题目要求
#include<bits/stdc++.h> using namespace std; char ma[105][105]; int main() { int a,b; cin>>a>>b; for(int i=0;i<50;i++){ for(int j=0;j<100;j++){ ma[i][j]='#'; } } for(int i=50;i<100;i++){ for(int j=0;j<100;j++){ ma[i][j]='.'; } } a--; b--; for(int i=0;i<50;i+=2){ for(int j=0;j<100;j+=2){ if(a)ma[i][j]='.',a--; } } for(int i=51;i<100;i+=2){ for(int j=0;j<100;j+=2){ if(b)ma[i][j]='#',b--; } } cout<<"100 100"<<'\n'; for(int i=0;i<100;i++){ for(int j=0;j<100;j++){ cout<<ma[i][j]; } cout<<endl; } return 0; }
Information
- ID
- 6582
- Time
- 100ms
- Memory
- 64MiB
- Difficulty
- 10
- Tags
- # Submissions
- 141
- Accepted
- 2
- Uploaded By