Submission #891227

#TimeUsernameProblemLanguageResultExecution timeMemory
891227SorahISACrossing (JOI21_crossing)C++17
26 / 100
6036 ms7076 KiB
#ifndef SorahISA #define SorahISA #include SorahISA __FILE__ SorahISA string XOR(string S, string T) { string res(SZ(S), '?'); for (int i = 0; i < SZ(S); ++i) { if (S[i] == T[i]) res[i] = S[i]; else res[i] = int('J') + int('O') + int('I') - int(S[i]) - int(T[i]); } return res; } void solve() { int N; cin >> N; vector<string> strs(8); cin >> strs[1] >> strs[2] >> strs[4]; strs[3] = XOR(strs[1], strs[2]); strs[5] = XOR(strs[1], strs[4]); strs[6] = XOR(strs[2], strs[4]); strs[7] = XOR(strs[3], strs[4]); // for (int i = 1; i <= 7; ++i) debug(i, strs[i]); // for (int i = 1; i <= 7; ++i) { // assert(XOR(strs[i], strs[i]) == strs[i]); // for (int j = i+1; j <= 7; ++j) { // assert(XOR(strs[i], strs[j]) == strs[i^j]); // } // } int Q; cin >> Q; string T; cin >> T; for (int q = 0; q <= Q; ++q) { if (q) { int l, r; cin >> l >> r, --l; char c; cin >> c; fill(begin(T) + l, begin(T) + r, c); } bool flag = false; for (int i = 1; i <= 7; ++i) { if (T == strs[i]) flag = true; } cout << (flag ? "Yes" : "No") << "\n"; } } int32_t main() { fastIO(); int t = 1; // cin >> t; for (int _ = 1; _ <= t; ++_) { solve(); } return 0; } #else #ifdef local #define _GLIBCXX_DEBUG 1 #endif #pragma GCC optimize("Ofast", "unroll-loops") #include <bits/stdc++.h> using namespace std; using int64 = long long; #define int int64 using float80 = long double; #define double float80 using pii = pair<int, int>; template <typename T> using Prior = std::priority_queue<T>; template <typename T> using prior = std::priority_queue<T, vector<T>, greater<T>>; #define eb emplace_back #define ef emplace_front #define ee emplace #define pb pop_back #define pf pop_front #define ALL(x) begin(x), end(x) #define RALL(x) rbegin(x), rend(x) #define SZ(x) ((int)(x).size()) #ifdef local #define fastIO() void() #define debug(...) \ fprintf(stderr, "\u001b[33m"), \ fprintf(stderr, "At [%s], line %d: (%s) = ", __FUNCTION__, __LINE__, #__VA_ARGS__), \ _do(__VA_ARGS__), \ fprintf(stderr, "\u001b[0m") template <typename T> void _do(T &&_t) { cerr << _t << "\n"; } template <typename T, typename ...U> void _do(T &&_t, U &&..._u) { cerr << _t << ", ", _do(_u...); } #else #define fastIO() ios_base::sync_with_stdio(0), cin.tie(0) #define debug(...) void() #endif template <typename T, typename U> bool chmin(T &lhs, U rhs) { return lhs > rhs ? lhs = rhs, 1 : 0; } template <typename T, typename U> bool chmax(T &lhs, U rhs) { return lhs < rhs ? lhs = rhs, 1 : 0; } #endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...