Submission #1218814

#TimeUsernameProblemLanguageResultExecution timeMemory
1218814blackavarVještica (COCI16_vjestica)C++20
0 / 160
34 ms584 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long n; cin >> n; vector<vector<int>> cnt(n, vector<int>(26, 0)); for (int i = 0; i < n; i++) { string s; cin >> s; for (int j = 0; j < s.size(); j++) cnt[i][s[j] - 'a']++; } int totalMask = 1 << n; vector<int> f(totalMask, 0); for (int mask = 1; mask < totalMask; mask++) { vector<int> mn(26, 1e6); for (char c = 0; c < 26; c++) { for (int i = 0; i < n; i++) { if (mask & (1 << i)) { mn[c] = min(mn[c], cnt[i][c]); } } if (mn[c] == 1e6) mn[c] = 0; f[mask] += mn[c]; } } int ans = 0; for (int mask = 1; mask < totalMask; mask++) { int cntBits = __builtin_popcount(mask); if (cntBits % 2 == 0) ans -= f[mask]; else ans += f[mask]; } cout << 1 + ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...