제출 #153774

#제출 시각아이디문제언어결과실행 시간메모리
153774BabinSinkoTavan (COCI16_tavan)C++14
0 / 80
2 ms380 KiB
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <iostream>
#include <cctype>
#include <ctime>
#include <string.h>
#include <algorithm>
#include <vector>

using namespace std;

long long n, m, k, x, nm, a, l;
vector<long long> key;
string s, sc;
char c[503][29];
int main(){
cin >> n >> m >> k >> x;
cin >> s;
a = x;
for (int i = 0; i < m; i++){
	cin >> sc;
	strcpy(c[i], sc.c_str());
	sort(c[i], c[i] + k);
	if (a != 0){
		key.insert(key.begin(), (a % (k + 1)) - 1);
		a = a / (k+1);
	}
	if (a == 0){
		key.insert(key.begin(), 0);
		
	}
}
cout << key[0] << endl;
for (int i = 0; i < n; i++){
	if (s[i] == '#'){
		s[i] = c[nm][key[nm]];
		nm = nm + 1;
	}
}
cout << s;
return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...