Submission #1182927

#TimeUsernameProblemLanguageResultExecution timeMemory
1182927enkhochirRoom Temperature (JOI24_ho_t1)C++20
100 / 100
976 ms71368 KiB
#include <bits/stdc++.h> using namespace std; #define int long long int inf=1e12; signed main() { ios::sync_with_stdio(0); cin.tie(NULL); int n,t; cin>>n>>t; pair<int,int> a[n*2]; for(int i=0; i<n; i++){ cin>>a[i].first; a[i].first%=t; a[i].second=i; a[i+n].first=a[i].first+t; a[i+n].second=i; } bool b[n+5]={0}; sort(a,a+2*n); // for(int i=0; i<3*n; i++){ // cout<<a[i].first<<" "; // } // cout<<endl; map<int,int> mp; int ans=1e18; multiset<int> s; // map<int,int> hmp; for(int i=0; i<2*n; i++){ if(mp.find(a[i].second)==mp.end()){ mp[a[i].second]=a[i].first; s.insert(a[i].first); } else{ s.erase(s.find(mp[a[i].second])); mp[a[i].second]=a[i].first; s.insert(a[i].first); } if(s.size()>=n){ auto it=s.end(); it--; ans=min(ans,*it-*s.begin()); } } cout<<ans/2+ans%2<<endl; // cout<<ans<<endl; }
#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...