제출 #1158792

#제출 시각아이디문제언어결과실행 시간메모리
1158792HakunaSnake Escaping (JOI18_snake_escaping)C++20
12 / 100
2092 ms65196 KiB
#include <bits/stdc++.h> using namespace std; int l, Q; string s; int main() { ios::sync_with_stdio(0); cin.tie(0); cin >> l >> Q; cin >> s; unordered_map<string, long long> mp; while (Q--) { string d; cin >> d; vector<int> nums{0}; for (int i = 0; i < d.size(); i++) { if (d[i] == '?') { int n = nums.size(); for (int j = 0; j < n; j++) { nums.emplace_back(nums[j] | (1 << (d.size() - 1 - i))); } } else if (d[i] == '1') { for (int j = 0; j < nums.size(); j++) { nums[j] |= 1 << (d.size() - 1 - i); } } } long long res = 0; for (int i = 0; i < nums.size(); i++) { res += s[nums[i]] - '0'; } cout << (mp[d] = res) << '\n'; } return 0; }
#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...