제출 #1271394

#제출 시각아이디문제언어결과실행 시간메모리
1271394SmuggingSpunDoktor (COCI17_doktor)C++20
80 / 100
46 ms10056 KiB
#include<bits/stdc++.h>
#define taskname "C"
using namespace std;
template<class T>void maximize(T& a, T b){
	if(a < b){
		a = b;
	}
}
int main(){
	ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
	if(fopen(taskname".inp", "r")){
		freopen(taskname".inp", "r", stdin);
	}
	int n;
	cin >> n;
	vector<int>a(n + 1), cnt(n << 1 | 1, 0), R(n << 1 | 1, 0);
	for(int i = 1; i <= n; i++){
		int l = i, r;
		cin >> a[i];
		if(l > (r = a[i])){
			swap(l, r);
		}
		int x = ((l + r) >> 1) + (((r - l) & 1) ? n : 0);
		cnt[x]++;
		maximize(R[x], r);
	}
	int p = max_element(cnt.begin(), cnt.end()) - cnt.begin();
	if(p <= n){
		cout << a[(p << 1) - R[p]] << " " << a[R[p]];
	}
	else{
		cout << a[((p - n) << 1) - R[p] + 1] << " " << a[R[p]];
	}
}

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

doktor.cpp: In function 'int main()':
doktor.cpp:12:24: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   12 |                 freopen(taskname".inp", "r", stdin);
      |                 ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...