답안 #865224

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
865224 2023-10-24T06:38:56 Z vjudge1 Sure Bet (CEOI17_sure) C++17
0 / 100
1 ms 2392 KB
#include <bits/stdc++.h>
#include <sstream>
#include <fstream>
#define et "\n"
#define ll long long
#define ff first
#define ss second
#define pb push_back
#define ioi ios::sync_with_stdio(false); cin.tie(0);  cout.tie(0)
#define yes cout << "YES" << endl
#define no cout << "NO" << endl
#define M 1000000007
 
using namespace std;
ll n,m,k;

string s1;
map <ll,ll> mp;
double ans,cnt,cnt1;
double a[211111],b[211111];
void solve() {
	cin >> n;
	ans = -1e9;
	for (int i = 1;i <= n;i++) {
		cin >> a[i] >> b[i];
	}
	sort(a + 1,a + n + 1);
	sort(b + 1,b + n + 1);
	cnt = 0;
	cnt1 = 0;
	for (int i = n;i >= 1;i --) {
		cnt += a[i] - 1.0;
		cnt1 -= (double)(n - i) + 1.0;
		for (int j = n;j >= 1;j--) {
			cnt1 += b[j] - 1.0;
			cnt -= 1.0;
			ans = max(ans,min(cnt,cnt1));
		}
		cnt += (double)n;
		cnt1 = 0;
//		cout << ans << ' ' << i << ' ' << b[i] << et;
	}
	cnt = 0;
	cnt1 = 0;
	for (int i = n;i >= 1;i --) {
		cnt += b[i] - 1.0;
		cnt1 -= (double)(n - i) + 1.0;
		for (int j = n;j >= 1;j--) {
			cnt1 += a[j] - 1.0;
			cnt -= 1.0;
			ans = max(ans,min(cnt,cnt1));
		}
		cnt += (double)n;
		cnt1 = 0;
//		cout << ans << ' ' << i << ' ' << b[i] << et;
	}
	cout << ans;
}
int main() {
	ioi;
	ll tt = 1;
//	cin >> tt;
	while (tt--) {
		solve();
	}
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2392 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2392 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 2392 KB Output isn't correct
2 Halted 0 ms 0 KB -