제출 #655255

#제출 시각아이디문제언어결과실행 시간메모리
655255speedyArdaRed-blue table (IZhO19_stones)C++14
38 / 100
32 ms1844 KiB
#pragma GCC optimize ("Ofast") #pragma GCC target("avx,avx2,fma") #pragma GCC optimization ("unroll-loops") #include "bits/stdc++.h" #define pb push_back #define vll vector<long long> #define vb vector<bool> #define vi vector<int> #define vs vector<string> #define vpii vector< pair<int, int> > #define pii pair<int, int> #define pbb pair<bool, bool> #define pll pair<long long, long long> #define vvi vector< vector<int> > #define ld long double #define mp make_pair #define FASTIO ios_base::sync_with_stdio(false); cin.tie(NULL); #define all(x) (x).begin(),(x).end() #define rall(x) (x).rbegin(),(x).rend() using namespace std; using ll = long long; int main() { int t; cin >> t; while(t--) { int n, m; cin >> n >> m; int cnt = 0; int ans = 0; char res[n + 5][m + 5]; if(n > m) { //fill(res, sizeof(res), '+'); ans = n; for(int i = 1; i <= n; i++) for(int a = 1; a <= m; a++) res[i][a] = '+'; int i = 1; for(i = 1; i <= m; i++) { if(cnt + 1 >= (m+1) / 2) break; for(int a = 1; a <= n / 2 + 1; a++) res[a][i] = '-'; ans++; cnt++; } int torem = 1; if(m % 2 == 0) torem++; if((n % 2 == 0 && m - i - torem + 1 > 2) || (n % 2 == 1 && m - i - torem + 1 > 1)) { ans--; if(n % 2 == 0) ans--; cnt = 0; for(; i <= m; i++) { if(cnt + 1 >= (m+1) / 2) break; for(int a = (n+1)/2; a <= n; a++) res[a][i] = '-'; ans++; cnt++; } } } else { //fill(res, sizeof(res), '-'); ans = m; for(int i = 1; i <= n; i++) for(int a = 1; a <= m; a++) res[i][a] = '-'; int i = 1; //cnt = 0; for(i = 1; i <= n; i++) { if(cnt + 1 >= (n+1) / 2) break; for(int a = 1; a <= m / 2 + 1; a++) res[i][a] = '+'; ans++; cnt++; } int torem = 1; if(n % 2 == 0) torem++; if((m % 2 == 0 && n - i - torem + 1 > 2) || (m % 2 == 1 && n - i - torem + 1 > 1)) { //break; ans--; if(m % 2 == 0) ans--; cnt = 0; for(; i <= n; i++) { if(cnt + 1 >= (n+1) / 2) break; for(int a = (m+1)/2; a <= m; a++) res[i][a] = '+'; ans++; cnt++; } } } cout << ans << "\n"; for(int i = 1; i <= n; i++) { for(int a = 1; a <= m; a++) cout << res[i][a]; cout << "\n"; } } }

컴파일 시 표준 에러 (stderr) 메시지

stones.cpp:3: warning: ignoring '#pragma GCC optimization' [-Wunknown-pragmas]
    3 | #pragma GCC optimization ("unroll-loops")
      |
#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...