Submission #116974

#TimeUsernameProblemLanguageResultExecution timeMemory
116974FutymyCloneDoktor (COCI17_doktor)C++14
80 / 100
83 ms16888 KiB
#include <bits/stdc++.h> using namespace std; const int N = 5e5 + 5; int n, a[N], cnt[2 * N], mn[2 * N], mx[2 * N]; int main(){ scanf("%d", &n); memset(mn, 0x3f, sizeof(mn)); for (int i = 1; i <= n; i++) scanf("%d", &a[i]); for (int i = 1; i <= n; i++) { int x = i - a[i]; if (x & 1) cnt[2 * i - 1 - x]++; else cnt[(i - x / 2) * 2 - 1]++; mn[2 * i - 1 - x] = min(mn[2 * i - 1 - x], i); mx[2 * i - 1 - x] = max(mx[2 * i - 1 - x], i); } int Max = -1, pos = 0; for (int i = 1; i <= 2 * n - 1; i++) if (cnt[i] > Max) Max = cnt[i], pos = i; int res = pos; //cout << res << "\n"; if (pos & 1) { pos = (pos + 1) / 2; int d = max(pos - mn[res], mx[res] - pos); cout << a[pos - d] << " " << a[pos + d]; } else { pos /= 2; int d = max(pos - mn[res], mx[res] - (pos + 1)); cout << a[pos - d] << " " << a[pos + 1 + d]; } return 0; }

Compilation message (stderr)

doktor.cpp: In function 'int main()':
doktor.cpp:10:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &n); memset(mn, 0x3f, sizeof(mn));
     ~~~~~^~~~~~~~~~
doktor.cpp:11:39: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
                                  ~~~~~^~~~~~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...