제출 #330183

#제출 시각아이디문제언어결과실행 시간메모리
330183casperwangSnake Escaping (JOI18_snake_escaping)C++14
12 / 100
2075 ms6432 KiB
#include <bits/stdc++.h> using namespace std; const int L = 20; int n, q; string str; int a, b; int val[1<<L]; int ans; signed main() { ios_base::sync_with_stdio(0), cin.tie(0); cin >> n >> q; cin >> str; for (int i = 0; i < (1<<n); i++) val[i] = str[i] - '0'; for (int i = 0; i < q; i++) { cin >> str; a = 0, b = 0; for (int j = 0; j < n; j++) { if (str[j] == '?') a = a*2, b = b*2+1; else if (str[j] == '0') a = a*2, b = b*2; else a = a*2+1, b = b*2+1; } ans = 0; for (int j = a; j <= b; j++) { if ((a&j) == a && (b|j) == b) { ans += val[j]; } } cout << ans << "\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...