#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

题目信息

题号:6532
题型:填空题
难度:普通