Submission #319927

#TimeUsernameProblemLanguageResultExecution timeMemory
319927ignaciocantaTavan (COCI16_tavan)C++14
80 / 80
1 ms512 KiB
#include <bits/stdc++.h> using namespace std; using tint = long long; using ld = long double; #define forsn(i, s, n) for(int i = s; i < int(n); i++) #define forn(i, n) forsn(i, 0, n) using vi = vector<int>; #define pb push_back #define rsz resize #define all(x) begin(x), end(x) #define rall(x) x.rbegin(), x.rend() #define sz(x) (int)(x).size() using pi = pair<int,int>; #define f first #define s second #define mp make_pair #define DBG(x) cerr << #x << " = " << x << endl; const int MOD = 1e9+7; const int MX = 1e5+5; const tint INF = 2e18; const int inf = 2e9; const ld PI = acos(ld(-1)); void NACHO(string name = "moop"){ ios_base::sync_with_stdio(0); cin.tie(0); // freopen((name+".in").c_str(), "r", stdin); // freopen((name+".in").c_str(), "w", stdout); } const int dx[4] = {1, -1, 0, 0}; const int dy[4] = {0, 0, 1, -1}; bool valid(int x, int y, int n, int m){ return (0<=x && x<n && 0<=y && y<m); } vector<string> convert(int n, int k){ vector<string> ret ; while(n > 0){ ret.pb(to_string(n%k)); n/=k; } reverse(all(ret)); return ret; } int main(){ NACHO(); int n, m, k, x; cin >> n >> m >> k >> x; string s; cin >> s; vector<string> baseK = convert(x-1, k); vector<char> ans (m); reverse(all(baseK)); while(sz(baseK) < m){ baseK.pb("0"); } reverse(all(baseK)); forn(i, m){ string S; cin >> S; sort(all(S)); ans[i] = S[stoi(baseK[i])]; } int c = 0; forn(i, n){ if(s[i] == '#') cout << ans[c++]; else cout << s[i]; } }
#Verdict Execution timeMemoryGrader output
Fetching results...