Submission #246753

#TimeUsernameProblemLanguageResultExecution timeMemory
246753Vladikus004Tavan (COCI16_tavan)C++17
48 / 80
5 ms384 KiB
#include <bits/stdc++.h> #define int long long #define inf 2e9 #define all(v) v.begin(), v.end() using namespace std; typedef long long ll; typedef long double ld; typedef pair <int, int> pii; const int N = 501; int n, m, k, x; string s, t[N]; ll pr; int32_t main() { ios_base::sync_with_stdio(false); cin.tie(0); #ifdef LOCAL freopen("input.txt", "r", stdin); #endif // LOCAL cin >> n >> m >> k >> x >> s; for (int i = 0; i < m; i++) { cin >> t[i]; sort(all(t[i])); } pr = 1; for (int i = m - 1; i > 0; i--) pr *= (int)t[i].size(); vector <int> ans; for (int i = 0; i < m; i++){ for (int j = 0; j < t[i].size(); j++){ if (x - pr * j < 1){ ans.push_back(j - 1); x -= pr * j; break; } } if (ans.size() == i) { ans.push_back(t[i].size() - 1); x -= pr * (int)(t[i].size() - 1); } if (i + 1 < m) pr /= (int)t[i + 1].size(); } reverse(all(ans)); // for (auto u: ans) cout << u << " "; int ind = 0; for (int i = 0; i < n; i++){ if (s[i] != '#') { cout << s[i]; continue; } cout << t[ind++][ans.back()]; ans.pop_back(); } }

Compilation message (stderr)

tavan.cpp: In function 'int32_t main()':
tavan.cpp:31:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for (int j = 0; j < t[i].size(); j++){
                         ~~^~~~~~~~~~~~~
tavan.cpp:38:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if (ans.size() == i) {
             ~~~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...