Submission #162448

#TimeUsernameProblemLanguageResultExecution timeMemory
162448MvCPolitical Development (BOI17_politicaldevelopment)C++11
0 / 100
3056 ms107376 KiB
#pragma GCC target("avx2") #pragma GCC optimization("O3") #pragma GCC optimization("unroll-loops") #include <bits/stdc++.h> #define rc(x) return cout<<x<<endl,0 #define pb push_back #define mkp make_pair #define in insert #define er erase #define fd find #define fr first #define sc second typedef long long ll; typedef long double ld; const ll INF=0x3f3f3f3f3f3f3f3f; const ll llinf=(1LL<<62); const int inf=(1<<30); const int nmax=5e4+50; const ll mod=1e9+7; const ll p=37; using namespace std; int n,k,x,i,j,d[nmax],nr,rs,ts,t,c[nmax]; ll pw,hs; //bitset<nmax>b[nmax],viz; vector<int>g[nmax],vc,rnd,sz[15]; map<vector<int>,int>mp; vector<vector<int> >vec; int main() { //freopen("sol.in","r",stdin); //freopen("sol.out","w",stdout); //mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); ios_base::sync_with_stdio(false);cin.tie(0);cerr.tie(0);cout.tie(0); //srand(time(0)); cin>>n>>k; for(i=1;i<=n;i++) { cin>>d[i]; for(j=0;j<d[i];j++)cin>>c[j],c[j]++; sort(c,c+d[i]); for(j=0;j<(1<<d[i]);j++) { vc.clear(); for(t=0;t<d[i];t++) { if(j&(1<<t)) { if(c[t]>i && (vc.empty() || vc.back()<i))vc.pb(i); vc.pb(c[t]); } } if((int)vc.size()<1)continue; if(vc.back()<i)vc.pb(i); if((int)vc.size()<2)continue; pw=1,hs=0; for(t=0;t<(int)vc.size();t++) { hs=(hs+pw*vc[t]%mod)%mod; pw=(pw*p)%mod; } sz[(int)vc.size()].pb(hs); //mp[vc]++; //if(mp[vc]==(int)vc.size())rs=max(rs,(int)vc.size()); } } /*sort(vec.begin(),vec.end()); nr=1; for(i=1;i<(int)vec.size();i++) { if(vec[i]==vec[i-1])nr++; else { if(nr==(int)vec[i-1].size())rs=max(rs,nr); nr=1; } } if(!vec.empty())if(nr==(int)vec.back().size())rs=max(rs,nr);*/ for(i=2;i<=k;i++) { sort(sz[i].begin(),sz[i].end()); nr=1; for(j=1;j<(int)sz[i].size();j++) { if(sz[i][j]==sz[i][j-1])nr++; else { if(nr==i)rs=max(rs,i); nr=1; } } if(!sz[i].empty() && nr==i)rs=max(rs,i); } rs=max(rs,1); cout<<rs<<endl; return 0; }

Compilation message (stderr)

politicaldevelopment.cpp:2:0: warning: ignoring #pragma GCC optimization [-Wunknown-pragmas]
 #pragma GCC optimization("O3")
 
politicaldevelopment.cpp:3:0: warning: ignoring #pragma GCC optimization [-Wunknown-pragmas]
 #pragma GCC optimization("unroll-loops")
#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...