제출 #1322851

#제출 시각아이디문제언어결과실행 시간메모리
1322851yessimkhanMP3 Player (CEOI10_mp3player)C++20
30 / 100
201 ms1300 KiB
#include <bits/stdc++.h> // solved by bekagg #define int long long #define ent '\n' #define pb push_back #define all(x) x.begin(),x.end() #define PRaim_bek_abi ios_base::sync_with_stdio(0);cin.tie(0); using namespace std; const int N = 1e5+5; const int MOD = 1e9+7; int n , m , k , a[N] , v = 0; char c[N]; int check(int x){ int l = 0 , r = m , p = -1; while(l <= r){ int md = (l + r) / 2; int cnt = md; for (int i = 2; i <= n; i++){ if (a[i] - a[i - 1] > x) continue; if (c[i] == '+'){ cnt++; cnt = min(cnt , m); } else { cnt--; cnt = max(cnt , 0ll); } } if (cnt == k){ p = md; } if (cnt <= k){ l = md + 1; } else r = md - 1; } v = p; return v; } void arkanefury228(){ cin >> n >> m >> k; for (int i = 1; i <= n; i++){ cin >> c[i] >> a[i]; } int l = 0 , r = 2e9 + 1, t = 0 , v1 = 0; while(l <= r){ int md = (l + r) / 2; if (check(md) != -1){ t = md; v1 = v; l = md + 1; } else r = md - 1; } if (t == 2e9 + 1){ cout << "infinity"; return; } cout << t << ' ' << v1; } signed main(){ PRaim_bek_abi int t=1; //cin>>t; for (int respagold = 1; respagold <= t; respagold++) arkanefury228(); }
#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...