제출 #631050

#제출 시각아이디문제언어결과실행 시간메모리
631050bachhoangxuanPolitical Development (BOI17_politicaldevelopment)C++17
39 / 100
311 ms8096 KiB
#include<bits/stdc++.h> using namespace std; #define maxn 50005 #define pii pair<int,int> int n,k,deg[maxn],ans,len,num[maxn],res; vector<int> edge[maxn],ver; set<pii> s; bool check[maxn]; bool ok(int mask){ for(int i=0;i<len;i++){ if((mask>>i)&1==0) continue; for(int j=0;j<i;j++){ if((mask>>j)&1==0) continue; int a=ver[i],b=ver[j]; if(*lower_bound(edge[a].begin(),edge[a].end(),b)!=b) return false; } } return true; } signed main(){ ios_base::sync_with_stdio(false); cin.tie(NULL);cout.tie(NULL); cin >> n >> k; for(int i=1;i<=n;i++){ cin >> deg[i];s.insert({deg[i],i}); for(int j=1;j<=deg[i];j++){ int x;cin >> x;x++; edge[i].push_back(x); } sort(edge[i].begin(),edge[i].end()); } for(int i=1;i<=n;i++){ pii p=*s.begin();check[p.second]=true; s.erase(s.begin());ver={p.second}; for(int v:edge[p.second]){ if(check[v]) continue; ver.push_back(v); } len=(int)ver.size(); for(int mask=(1<<len)-1;mask>=(1<<ans);mask--){ int cnt=0; for(int j=0;j<len;j++) cnt+=(mask>>j)&1; if(cnt<=ans) continue; if(ok(mask)) ans=cnt; } for(int v:edge[p.second]){ if(check[v]) continue; s.erase({deg[v],v});deg[v]--; s.insert({deg[v],v}); } } cout << ans << '\n'; }

컴파일 시 표준 에러 (stderr) 메시지

politicaldevelopment.cpp: In function 'bool ok(int)':
politicaldevelopment.cpp:11:23: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
   11 |         if((mask>>i)&1==0) continue;
      |                      ~^~~
politicaldevelopment.cpp:13:27: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
   13 |             if((mask>>j)&1==0) continue;
      |                          ~^~~
#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...