代码里特判写的很明确,本地按照测试点输入10\n1输出是0和测试点一致。然而过不了,求助
#include <iostream>
#include <algorithm>
#include <climits>
#include <queue>
using namespace std;
vector<char> s;
void out()
{
int i;
for (i = 0; i < s.size(); ++i)
{
if (s[i] != '0')
break;
}
for (; i < s.size(); ++i)
{
printf("%c", s[i]);
}
printf("\n");
}
int main(int argc, char const *argv[])
{
int k, c = 0;
string ss;
getline(cin, ss);
copy(ss.begin(), ss.end(), back_inserter(s));
scanf("%d", &k);
while (k)
{
int l;
char m = 'A';
for (int i = c; i <= k + c; ++i)
{
if (s[i] < m)
{
m = s[i];
l = i;
}
}
s.erase(s.begin() + c, s.begin() + l);
k -= l - c;
++c;
}
out();
return 0;
}