#include<stdio.h> #include<
#include<stdio.h>
#include<string.h>
#define maxn 50
void getnext(char str[])
{
int l=strlen(str),i,j,k,temp;
k=l-2;
while(k>=0&&str[k]>str[k+1]) k--;
i=k+1;
while(i<l&&str[i]>str[k]) i++;
temp=str[k];
str[k]=str[i-1];
str[i-1]=temp;
for(i=l-1;i>k;i--)
for(j=k+1;j<i;j++)
if(str[j]>str[j+1])
{
temp=str[j];
str[j]=str[j+1];
str[j+1]=temp;
}
return ;
}
int main()
{
char a[maxn];
int n;
scanf("%s %d",a,&n);
while(n>0)
{
getnext(a);
n--;
}
printf("%s\n",a);
return 0;
}输入: NOIP 3
输出: ______
答案
第1空:NPOI