Submission #4076340
Source Code Expand
#include <stdio.h> #include <iostream> #include <string> #include <sstream> #include <iterator> #include <algorithm> using namespace std; int countDiff(string a, string b){ int cnt = 0; for(unsigned int i = 0; i < a.length(); i++){ if(a[i] != b[i]){ cnt++; } } return cnt; } int findIndexFromBack(string str, char c){ int i = str.length() - 1; for(;i >= 0; i--){ if(str[i] == c){ break; } } if(i < 0){ return -1; } return i; } string exchangeChar(string str, int a, int b){ char buf = str[a]; str[a] = str[b]; str[b] = buf; return str; } string makeSmallest(int n, int k, string inp){ string copied, original; copied = original = inp; sort(copied.begin(), copied.end()); int ind, i; i = 0; string res = ""; for(; i < n; i++){ if(inp[i] == copied[i]){ res += copied[i]; continue; } ind = findIndexFromBack(inp, copied[i]); if(ind < 0){ throw logic_error("index cant beb null"); } inp = exchangeChar(inp, i, ind); res += inp[i]; k--; if(k <= countDiff(original.substr(i+1, n), inp.substr(i+1, n))){ i++; break; } } res += inp.substr(i, n); return res; } int main (void){ int n, k; string inp; cin >> n >> k >> inp; cout << makeSmallest(n,k,inp) << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - 辞書式順序ふたたび |
User | hanyutrans |
Language | C++ (GCC 5.4.1) |
Score | 0 |
Code Size | 1559 Byte |
Status | WA |
Exec Time | 1 ms |
Memory | 256 KB |
Judge Result
Set Name | All | ||||
---|---|---|---|---|---|
Score / Max Score | 0 / 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 | WA | 1 ms | 256 KB |
hand_1_1.txt | WA | 1 ms | 256 KB |
hand_1_2.txt | AC | 1 ms | 256 KB |
hand_1_3.txt | WA | 1 ms | 256 KB |
hand_1_4.txt | AC | 1 ms | 256 KB |
hand_1_5.txt | WA | 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 | WA | 1 ms | 256 KB |
hand_2_1.txt | WA | 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 | WA | 1 ms | 256 KB |
hand_2_4.txt | AC | 1 ms | 256 KB |
hand_2_5.txt | WA | 1 ms | 256 KB |
hand_2_6.txt | AC | 1 ms | 256 KB |
hand_2_7.txt | WA | 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 | WA | 1 ms | 256 KB |
hand_3_4.txt | WA | 1 ms | 256 KB |
hand_3_5.txt | WA | 1 ms | 256 KB |
hand_3_6.txt | WA | 1 ms | 256 KB |
hand_4_2.txt | AC | 1 ms | 256 KB |
hand_4_3.txt | WA | 1 ms | 256 KB |
hand_4_4.txt | WA | 1 ms | 256 KB |
hand_4_5.txt | WA | 1 ms | 256 KB |
hand_4_6.txt | WA | 1 ms | 256 KB |
random_1.txt | WA | 1 ms | 256 KB |
random_10.txt | WA | 1 ms | 256 KB |
random_11.txt | WA | 1 ms | 256 KB |
random_12.txt | WA | 1 ms | 256 KB |
random_13.txt | WA | 1 ms | 256 KB |
random_14.txt | WA | 1 ms | 256 KB |
random_15.txt | AC | 1 ms | 256 KB |
random_2.txt | WA | 1 ms | 256 KB |
random_3.txt | WA | 1 ms | 256 KB |
random_4.txt | WA | 1 ms | 256 KB |
random_5.txt | AC | 1 ms | 256 KB |
random_6.txt | WA | 1 ms | 256 KB |
random_7.txt | AC | 1 ms | 256 KB |
random_8.txt | WA | 1 ms | 256 KB |
random_9.txt | WA | 1 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 | WA | 1 ms | 256 KB |
small_4.txt | WA | 1 ms | 256 KB |
small_5.txt | AC | 1 ms | 256 KB |
small_6.txt | WA | 1 ms | 256 KB |
small_7.txt | WA | 1 ms | 256 KB |
small_8.txt | AC | 1 ms | 256 KB |
small_9.txt | AC | 1 ms | 256 KB |