제출 #1156237

#제출 시각아이디문제언어결과실행 시간메모리
1156237Faisal_SaqibRed-blue table (IZhO19_stones)C++20
27 / 100
24 ms1352 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned long long #define vll vector<ll> #define pll pair<ll,ll> #define pb push_back #define all(x) x.begin(),x.end() #define rall(x) x.rbegin(),x.rend() template<typename T> using minpq = priority_queue<T, vector<T>, greater<T>>; template<typename T> using maxpq = priority_queue<T, vector<T>, less<T>>; void input(vll&q) { for(auto&i:q)cin>>i; } void pyn(bool x) { cout<<(x?"YES":"NO")<<endl; } void pYN(bool x) { cout<<(x?"Yes":"No")<<endl; } void pAB(bool x) { cout<<(x?"Alice":"Bob")<<endl; } ll mx_pos(ll n,ll m) { ll r=(m/2)+1; // red in row ll b=(m-r); // blue in row ll tb=b*n; // total blue in grid ll bm=(n/2)+1; // blue req in a single column // cout<<b<<' '<<tb<<' '<<bm<<endl; // return (n+min(m,(tb/bm))); return (n+b); } void solve() { ll n,m; cin>>n>>m; ll mx=mx_pos(n,m); if(mx>=mx_pos(m,n)) { string cur(m,'+'); for(int i=0;i<((m-1)/2);i++) cur[i]='-'; cout<<mx_pos(n,m)<<endl; for(int i=0;i<n;i++) cout<<cur<<endl; } else { string cur(n,'-'); for(int i=0;i<((n-1)/2);i++) cur[i]='+'; cout<<mx_pos(m,n)<<endl; for(int j=0;j<n;j++) { for(int i=0;i<m;i++) cout<<cur[j]; cout<<endl; } } // cout<<max(mx_pos(n,m),mx_pos(m,n))<<endl; } int main() { int t=1; cin>>t; while(t--)solve(); }
#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...