제출 #507939

#제출 시각아이디문제언어결과실행 시간메모리
507939MazaalaiNice sequence (IZhO18_sequence)C++17
100 / 100
409 ms51288 KiB
#include <bits/stdc++.h> #define pb push_back using namespace std; const int N = 2e5 + 5; int n, m, mul, k, lim; int arr[2*N], curVal; bool vis[2*N], possible; void solve(int pos) { if (arr[pos] != 0) return; if (vis[pos]) { possible = 0; return; } vis[pos] = 1; if (possible && pos+m <= lim) solve(pos+m); if (possible && pos-n >= 0) solve(pos-n); arr[pos] = curVal++; } int gcd(int a, int b) { if (a == 0) return b; return gcd(b % a, a); } void go() { cin >> n >> m; vector <int> ans(1, 1); k = max(n, m); int l = k-1, r = n+m-1; l = r = n + m - 1 - gcd(n, m); while(l <= r) { int mid = (l+r)>>1; curVal = possible = 1; for (int i = 0; i < 2*k+5; i++) arr[i] = vis[i] = 0; lim = mid; for (int i = 0; i <= mid && possible; i++) { if (vis[i]) continue; solve(i); } if (!possible) { r = mid-1; } else { l = mid+1; vector <int> cur; for (int i = 1; i <= mid; i++) cur.pb(arr[i] - arr[i-1]); ans = cur; } } cout << ans.size() << '\n'; for (auto el : ans) cout << -el << ' '; cout << '\n'; } signed main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); // freopen("in.txt", "r", stdin); // freopen("out.txt", "w", stdout); int T; cin >> T; while(T--) go(); }

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

sequence.cpp: In function 'void go()':
sequence.cpp:49:2: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   49 |  for (auto el : ans) cout << -el << ' '; cout << '\n';
      |  ^~~
sequence.cpp:49:42: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   49 |  for (auto el : ans) cout << -el << ' '; cout << '\n';
      |                                          ^~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...