Submission #716750

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
7167502023-03-31 02:39:43oooSnake Escaping (JOI18_snake_escaping)C++14
100 / 100
1471 ms39192 KiB
#include <bits/stdc++.h>
using namespace std;
const int nu = (1<<20);
int n, query, f[2][nu];
string s;
vector<int> cnt0, cnt1, cnt2;
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin >> n >> query >> s;
for(int i = 0; i < (1<<n); ++i) f[0][i] = f[1][i] = s[i]-48;
for(int i = 0; i < n; ++i)
for(int j = 0; j < (1<<n); ++j)
if((1<<i)&j) f[0][j] += f[0][j^(1<<i)];
else f[1][j] += f[1][j^(1<<i)];
while(query > 0)
{
string x;
cin >> x;
int num0 = 0; int num1 = 0; int num2 = 0; int ans = 0;
for(int i = 0; i < int(x.size()); ++i)
if(x[i] == '0') cnt0.push_back(n-i-1), num0 += (1<<(n-i-1)); else if(x[i] == '1') cnt1.push_back(n-i-1), num1 += (1<<(n-i-1));
else cnt2.push_back(n-i-1), num2 += (1<<(n-i-1));
if(int(cnt1.size()) <= n/3)
{
int len = int(cnt1.size());
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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...