Submission #699136

#TimeUsernameProblemLanguageResultExecution timeMemory
699136Ahmed57Sticks (POI11_pat)C++17
84 / 100
853 ms55080 KiB
#include <bits/stdc++.h> using namespace std; #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds; #define ordered_set tree<int, null_type,less<int>, rb_tree_tag,tree_order_statistics_node_update> vector<pair<int,int>> v; ordered_set s[50];int b[50]; signed main(){ ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); int n; cin>>n; for(int i = 0;i<n;i++){ int d; cin>>d; for(int j = 0;j<d;j++){ int x;cin>>x; v.push_back({x,i}); s[i].insert(x); } } sort(v.begin(),v.end()); for(int i = v.size()-1;i>=0;i--){ b[v[i].second] = -1; for(int j = 0;j<n;j++){ if(j==v[i].second)continue; int d = s[j].order_of_key(v[i].first+1); if(d>0){ b[j]=*s[j].find_by_order(d-1); }else b[j] = -1; } int ma1 = -1 , ind1 = 0 , ma2 = -1 , ind2 = 0; for(int j = 0;j<n;j++){ if(ma1<b[j]){ ma1 = b[j]; ind1 = j; } } if(ma1==-1)continue; for(int j = 0;j<n;j++){ if(j==ind1)continue; if(ma2<b[j]){ ma2 = b[j]; ind2 = j; } } if(ma2==-1)continue; if(ma1+ma2<=v[i].first)continue; cout<<v[i].second+1<<" "<<v[i].first<<" "<<ind1+1<<" "<<ma1<<" "<<ind2+1<<" "<<ma2<<endl; return 0; } cout<<"NIE"<<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...
#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...