Submission #372335

#TimeUsernameProblemLanguageResultExecution timeMemory
372335mariowongRed-blue table (IZhO19_stones)C++14
0 / 100
36 ms1536 KiB
#include <bits/stdc++.h> using namespace std; int t,n,m,pos,num; char ans[1005][1005]; int main(){ ios::sync_with_stdio(false); cin >> t; while (t--){ cin >> n >> m; cout << max(min((n-1)/2*m/(n/2+1),(m-1)/2)+n,min((m-1)/2*n/(m/2+1),(n-1)/2)+m) << "\n"; if ((n-1)/2*m/(n/2+1)+n > (m-1)/2*n/(m/2+1)+m){ for (int i=1;i<=n;i++){ for (int j=1;j<=m;j++){ ans[i][j]='+'; } } pos=1; for (int i=1;i<=min((n-1)/2*m/(n/2+1),(m-1)/2);i++){ for (int j=1;j<=n/2+1;j++){ ans[pos][i]='-'; pos++; if (pos == n+1) pos=1; } } } else { for (int i=1;i<=n;i++){ for (int j=1;j<=m;j++){ ans[i][j]='-'; } } pos=1; for (int i=1;i<=min((m-1)/2*n/(m/2+1),(n-1)/2);i++){ for (int j=1;j<=m/2+1;j++){ ans[i][pos]='+'; pos++; if (pos == m+1) pos=1; } } } for (int i=1;i<=n;i++){ for (int j=1;j<=m;j++){ cout << ans[i][j]; } cout << "\n"; } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...