Submission #241014

#TimeUsernameProblemLanguageResultExecution timeMemory
241014SamAndIgra (COCI17_igra)C++17
100 / 100
5 ms384 KiB
#include <bits/stdc++.h> using namespace std; #define m_p make_pair #define all(x) (x).begin(),(x).end() #define sz(x) ((int)(x).size()) #define fi first #define se second typedef long long ll; mt19937 rnd(chrono::steady_clock::now().time_since_epoch().count()); mt19937 rnf(2106); const int N = 5003; int n; char a[N], b[N]; int qa[302], qb[302]; bool stg() { for (int uab = 0; uab <= qa['a']; ++uab) { int fa = qb['a'], fb = qb['b'], fc = qb['c']; fb -= uab; fc -= (qa['a'] - uab); if (fb < 0 || fc < 0) continue; int sb = qa['b'], sc = qa['c']; if (sb >= fc && sc >= fb) return true; continue; if (sb <= fc) { fc -= sb; sb = 0; } else { sb -= fc; fc = 0; } if (sc <= fb) { fb -= sc; sc = 0; } else { sc -= fb; fb = 0; } } return false; } void solv() { scanf("%d", &n); scanf(" %s", a); scanf(" %s", b); for (int i = 0; i < n; ++i) qa[a[i]]++; for (int i = 0; i < n; ++i) qb[b[i]]++; for (int i = 0; i < n; ++i) { qb[b[i]]--; for (char u = 'a'; u <= 'c'; ++u) { if (!qa[u] || u == b[i]) continue; --qa[u]; if (stg()) { putchar(u); break; } ++qa[u]; } } putchar('\n'); } int main() { #ifdef SOMETHING freopen("input.txt", "r", stdin); //freopen("output.txt", "w", stdout); #endif // SOMETHING //ios_base::sync_with_stdio(false), cin.tie(0); solv(); return 0; } //while ((double)clock() / CLOCKS_PER_SEC <= 0.9){}

Compilation message (stderr)

igra.cpp: In function 'bool stg()':
igra.cpp:22:13: warning: unused variable 'fa' [-Wunused-variable]
         int fa = qb['a'], fb = qb['b'], fc = qb['c'];
             ^~
igra.cpp: In function 'void solv()':
igra.cpp:61:16: warning: array subscript has type 'char' [-Wchar-subscripts]
         qa[a[i]]++;
                ^
igra.cpp:63:16: warning: array subscript has type 'char' [-Wchar-subscripts]
         qb[b[i]]++;
                ^
igra.cpp:66:16: warning: array subscript has type 'char' [-Wchar-subscripts]
         qb[b[i]]--;
                ^
igra.cpp:69:22: warning: array subscript has type 'char' [-Wchar-subscripts]
             if (!qa[u] || u == b[i])
                      ^
igra.cpp:71:19: warning: array subscript has type 'char' [-Wchar-subscripts]
             --qa[u];
                   ^
igra.cpp:77:19: warning: array subscript has type 'char' [-Wchar-subscripts]
             ++qa[u];
                   ^
igra.cpp:57:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &n);
     ~~~~~^~~~~~~~~~
igra.cpp:58:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf(" %s", a);
     ~~~~~^~~~~~~~~~
igra.cpp:59:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf(" %s", b);
     ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...