Submission #4076748
Source Code Expand
#include <bits/stdc++.h> using namespace std; bool f(string chars, string orig, int change, string& out) { if (chars.size() == 0) { out = ""; return true; } int cnt[26] = {}, diff = 0; for (char c : chars) cnt[c-'a']++; for (char c : orig) if (cnt[c-'a']>0) cnt[c-'a']--; diff = accumulate(begin(cnt), end(cnt), 0); if (diff > change) return false; string sc = chars; sort(begin(sc), end(sc)); for (int i = 0; i < sc.size(); i++) { string c = sc.substr(0, i) + sc.substr(i+1), o; if (f(c, orig.substr(1), change - (sc[i] != orig[0]), o)) { out = string(1, sc[i]) + o; return true; } } return false; } int main() { int N, K; cin >> N >> K; string S; cin >> S; string ans; f(S, S, K, ans); cout << ans << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - 辞書式順序ふたたび |
User | ha15 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 885 Byte |
Status | AC |
Exec Time | 3 ms |
Memory | 256 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 100 / 100 | ||
Status |
|
Set Name | Test Cases |
---|---|
All | hand_1_0.txt, hand_1_1.txt, hand_1_2.txt, hand_1_3.txt, hand_1_4.txt, hand_1_5.txt, hand_1_6.txt, hand_1_7.txt, hand_1_8.txt, hand_2_0.txt, hand_2_1.txt, hand_2_10.txt, hand_2_2.txt, hand_2_3.txt, hand_2_4.txt, hand_2_5.txt, hand_2_6.txt, hand_2_7.txt, hand_2_8.txt, hand_2_9.txt, hand_3_2.txt, hand_3_3.txt, hand_3_4.txt, hand_3_5.txt, hand_3_6.txt, hand_4_2.txt, hand_4_3.txt, hand_4_4.txt, hand_4_5.txt, hand_4_6.txt, random_1.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_2.txt, random_3.txt, random_4.txt, random_5.txt, random_6.txt, random_7.txt, random_8.txt, random_9.txt, sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt, small_1.txt, small_2.txt, small_3.txt, small_4.txt, small_5.txt, small_6.txt, small_7.txt, small_8.txt, small_9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
hand_1_0.txt | AC | 1 ms | 256 KB |
hand_1_1.txt | AC | 1 ms | 256 KB |
hand_1_2.txt | AC | 1 ms | 256 KB |
hand_1_3.txt | AC | 1 ms | 256 KB |
hand_1_4.txt | AC | 1 ms | 256 KB |
hand_1_5.txt | AC | 1 ms | 256 KB |
hand_1_6.txt | AC | 1 ms | 256 KB |
hand_1_7.txt | AC | 1 ms | 256 KB |
hand_1_8.txt | AC | 1 ms | 256 KB |
hand_2_0.txt | AC | 1 ms | 256 KB |
hand_2_1.txt | AC | 1 ms | 256 KB |
hand_2_10.txt | AC | 1 ms | 256 KB |
hand_2_2.txt | AC | 1 ms | 256 KB |
hand_2_3.txt | AC | 1 ms | 256 KB |
hand_2_4.txt | AC | 1 ms | 256 KB |
hand_2_5.txt | AC | 1 ms | 256 KB |
hand_2_6.txt | AC | 1 ms | 256 KB |
hand_2_7.txt | AC | 1 ms | 256 KB |
hand_2_8.txt | AC | 1 ms | 256 KB |
hand_2_9.txt | AC | 1 ms | 256 KB |
hand_3_2.txt | AC | 1 ms | 256 KB |
hand_3_3.txt | AC | 1 ms | 256 KB |
hand_3_4.txt | AC | 1 ms | 256 KB |
hand_3_5.txt | AC | 1 ms | 256 KB |
hand_3_6.txt | AC | 1 ms | 256 KB |
hand_4_2.txt | AC | 1 ms | 256 KB |
hand_4_3.txt | AC | 1 ms | 256 KB |
hand_4_4.txt | AC | 1 ms | 256 KB |
hand_4_5.txt | AC | 1 ms | 256 KB |
hand_4_6.txt | AC | 1 ms | 256 KB |
random_1.txt | AC | 1 ms | 256 KB |
random_10.txt | AC | 2 ms | 256 KB |
random_11.txt | AC | 2 ms | 256 KB |
random_12.txt | AC | 2 ms | 256 KB |
random_13.txt | AC | 2 ms | 256 KB |
random_14.txt | AC | 2 ms | 256 KB |
random_15.txt | AC | 2 ms | 256 KB |
random_2.txt | AC | 2 ms | 256 KB |
random_3.txt | AC | 1 ms | 256 KB |
random_4.txt | AC | 2 ms | 256 KB |
random_5.txt | AC | 1 ms | 256 KB |
random_6.txt | AC | 2 ms | 256 KB |
random_7.txt | AC | 2 ms | 256 KB |
random_8.txt | AC | 3 ms | 256 KB |
random_9.txt | AC | 3 ms | 256 KB |
sample_1.txt | AC | 1 ms | 256 KB |
sample_2.txt | AC | 1 ms | 256 KB |
sample_3.txt | AC | 1 ms | 256 KB |
sample_4.txt | AC | 1 ms | 256 KB |
small_1.txt | AC | 1 ms | 256 KB |
small_2.txt | AC | 1 ms | 256 KB |
small_3.txt | AC | 1 ms | 256 KB |
small_4.txt | AC | 1 ms | 256 KB |
small_5.txt | AC | 1 ms | 256 KB |
small_6.txt | AC | 1 ms | 256 KB |
small_7.txt | AC | 1 ms | 256 KB |
small_8.txt | AC | 1 ms | 256 KB |
small_9.txt | AC | 1 ms | 256 KB |