| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1339479 | vjudge1 | Parametriziran (COCI19_parametriziran) | C++20 | 836 ms | 96416 KiB |
#include <bits/stdc++.h>
#pragma GCC optimization("Ofast,unroll-loops")
#pragma GCC optimize("O3")
#pragma GCC target("avx2,popcnt")
using namespace std;
unordered_map<string, int> fr[64];
int main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int n, m, ans = 0;
cin >> n >> m;
string s, ss, s2;
for(int i = 1; i <= n; i++){
ss = "";
cin >> s;
int mask = 0;
for(int j = 0; j < m; j++){
if(s[j] != '?'){
mask ^= (1 << j);
ss += s[j];
}
else if(ss[j] == '?') ss += '#';
}
for(int mask2 = 0; mask2 < 1 << m; mask2++){
s2 = "";
for(int j = 0; j < m; j++){
if((mask2 & (1 << j)) && (mask & (1 << j)))
s2 += s[j];
else if(mask2 & (1 << j))
s2 += '?';
else
s2 += '#';
}
ans += fr[mask2][s2];
}
for(int mask2 = 0; mask2 < 1 << m; mask2++){
if((mask2 & mask) == mask2){
s2 = "";
for(int j = 0; j < m; j++){
if(mask2 & (1 << j)){
s2 += s[j];
}
else if(mask & (1 << j))
s2 += '?';
else
s2 += '#';
}
fr[mask][s2]++;
}
}
}
cout << ans << '\n';
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
