Submission #1124717

#TimeUsernameProblemLanguageResultExecution timeMemory
1124717peacebringer1667Room Temperature (JOI24_ho_t1)C++17
35 / 100
1 ms584 KiB
#include<bits/stdc++.h> #define ll long long #define ldb long double #define db double #define fi first #define se second #define sza(a) (int)a.size() #define pir pair<int,int> #define pirll pair<ll,ll> using namespace std; const int maxn = 5e5 + 5; template <class t1,class t2> inline void maxi(t1 &x,t2 y){if (x < y) x = y;} template <class t1,class t2> inline void mini(t1 &x,t2 y){if (x > y) x = y;} multiset <int> s; vector <int> lst; void input(int n,int T){ for (int i = 1 ; i <= n ; i++){ int x; cin >> x; s.insert(x % T); if (x >= T) lst.push_back(x % T); } } int get_dist(){ if (s.size() < 2) return 0; return ((*s.rbegin()) - (*s.begin()) + 1)/2; } int solve(int n,int T){ int res = get_dist(); sort(lst.begin(),lst.end()); for (int x : lst){ s.erase(s.lower_bound(x)); s.insert(x + T); mini(res,get_dist()); } return res; } int main(){ ios_base::sync_with_stdio(false); cin.tie(0);cout.tie(0); int n,T; cin >> n >> T; input(n,T); cout << solve(n,T) << "\n"; return 0; }
#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...