제출 #1154134

#제출 시각아이디문제언어결과실행 시간메모리
1154134Younis_DwaiCouncil (JOI23_council)C++20
16 / 100
4094 ms6756 KiB
#pragma GCC optimize("O3,unroll-loops") #pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt") #include <bits/stdc++.h> #define endl "\n" #define F first #define S second #define pb push_back #define pf push_front #define popf pop_frot #define popb pop_back //#define int long long #define in insert //#define mid (l+r)/2 using namespace std; const int N=3e5+5; bool b[N][21]; int best[N],n,m,cnt[21],ans[N],ret=0,need; void R(int k , int p){ if(cnt[k]==need && b[p][k]==1) --ret; cnt[k]-=b[p][k]; return ; } void A(int k , int p){ if(cnt[k]==need-1 && b[p][k]==1) ++ret; cnt[k]+=b[p][k]; return ; } int32_t main(){ ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(nullptr); cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>b[i][j]; cnt[j]+=b[i][j]; } } need=(n)/2; for(int j=1;j<=m;j++){ if(cnt[j]>=need) ++ret; } for(int i=1;i<=n;i++){ for(int j=1;j<i;j++){ for(int k=1;k<=m;k++){ R(k,i); R(k,j); } ans[i]=max(ans[i],ret); ans[j]=max(ans[j],ret); //cout<<" # "<<i<<' '<<j<<' '<<ret<<endl; for(int k=1;k<=m;k++){ A(k,i); A(k,j); } } } for(int i=1;i<=n;i++) cout<<ans[i]<<endl; 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...