Submission #865302

# Submission time Handle Problem Language Result Execution time Memory
865302 2023-10-24T07:17:44 Z vjudge1 Sure Bet (CEOI17_sure) C++17
0 / 100
2 ms 2396 KB
//Bismillahir-Rahmanir-Rahim
#include <bits/stdc++.h>
         
using namespace std;
      
#define flash ios_base::sync_with_stdio(0),cin.tie(0)
#define pb push_back
#define ll long long
#define ld long double
#define dbg(x) cerr << #x << " = " << x << "\n";
#define ff first
#define ss second
 
 /*     
#pragma GCC target ("avx2")
#pragma GCC optimization ("O3")
#pragma comment (linker, "/stack:200000000")
#pragma GCC optimize("Ofast")
#pragma GCC target ("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
*/ 
 
const long long INF = 1e9 + 7;
const long long MOD = 1e9 + 7;
const int maxn = 1e5 + 10;

int n;
long double a[maxn], b[maxn], ans, x, y, sz;

void press_F_() {
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> a[i] >> b[i];
	}
	sort(a + 1, a + n + 1);
	sort(b + 1, b + n + 1);
	reverse(a + 1, a + n + 1);
	reverse(b + 1, b + n + 1);
	int id1 = 0, id2 = 0;
	while(id1 <= n || id2 <= n) {
		if (min(x + a[id1 + 1] - (sz + 1), y - (sz + 1)) >= min(x - (sz + 1), y + b[id2 + 1] - (sz + 1))) {
			id1++;
			x += a[id1];
			sz++;
		} else {
			id2++;
			y += b[id2];
			sz++;
		}
		ans = max(ans, min(x - sz, y - sz));
	}
	printf("%.4lf",(long double)ans);
} 

int main() {
    flash;
    // srand(time(0));
    int T = 1;
    // cin >> T;
    for (int i = 1; i <= T; i++) {
        // cout << "Case" << " " << i << ':' << "\n";
        press_F_();
    }
    //Respa gold 2023-2024 InshAllah
    return 0;
}
/*
Maybe not today and tomorrow, but InshAllah one day I will reach expert
*/
// g++ -std=c++17 main.cpp
// ./a.out

Compilation message

sure.cpp: In function 'void press_F_()':
sure.cpp:51:14: warning: format '%lf' expects argument of type 'double', but argument 2 has type 'long double' [-Wformat=]
   51 |  printf("%.4lf",(long double)ans);
      |          ~~~~^  ~~~~~~~~~~~~~~~~
      |              |  |
      |              |  long double
      |              double
      |          %.4Lf
# Verdict Execution time Memory Grader output
1 Correct 2 ms 2396 KB Output is correct
2 Incorrect 2 ms 2396 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 2396 KB Output is correct
2 Incorrect 2 ms 2396 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 2396 KB Output is correct
2 Incorrect 2 ms 2396 KB Output isn't correct
3 Halted 0 ms 0 KB -