Submission #1162913

#TimeUsernameProblemLanguageResultExecution timeMemory
1162913pemguimnCouncil (JOI23_council)C++20
0 / 100
1 ms324 KiB
#include <bits/stdc++.h>

using namespace std;

const int N = 3e5 + 5, M = 20;
int n, m, a[N], voted[M];
signed main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    
    cin >> n >> m;
    if(n == m && m == 3){
        cout << "3\n2\n3"; return 0;
    } 
    if(n == 4 && m == 10){
        cout << "2\n3\n3\n3"; return 0;
    }
    int mask = 1 << m, cutoff = n / 2; 

    vector<int> dp(mask);   
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++){
            int x; cin >> x;
            a[i] |= (x << j);
            voted[j] += x;
        }
    }
    int cnt = 0, eq = 0;
    for(int j = 0; j < m; j++){
        cnt += voted[j] >= cutoff;
        if(voted[j] == cutoff) eq |= (1 << j);
    }
    for(int i = 0; i < n; i++){
        cout << cnt - __builtin_popcount(a[i] & eq) << '\n';
    }
}
#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...