题目链接:http://acm.zzuli.edu.cn/showproblem?problem_id=1089
好久没怎么写题了,手生了,这题想了很久,不过在暑假集训时感觉这就是水题而已,不过虽然时间长,但结果是1A,感觉还是蛮爽的,很有成就感的。所以纪念一下:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
#include<stdio.h>
#include<string.h>
char str[1000];
char str1[1000];
char str2[1000];
int main()
{
int n,i1,i2,i3,j,num,k,k1,k2,len,flag;
while(scanf("%d",&n),n!=0)
{
getchar();
gets(str);
len=strlen(str);
num=0;
k=0;
j=0;
k1=0;
k2=0;
while(k<len)
{
flag=1;
for(i1=0;i1<k1;i1++)
{
if(str[k]==str1[i1])
{
str[i1]='0';
j--;
flag=0;
break;
}
}
if(flag!=0)
{
for(i2=0;i2<k2;i2++)
{
if(str[k]==str2[i2])
{
str2[i2]='0';
break;
}
}
}
if(i1==k1&&i2==k2)
{
if(j<n)
{
str1[k1]=str[k];
k1++;
j++;
}
else
{
str2[k2]=str[k];
k2++;
num++;
}
}
k++;
}
if(num==0)
printf("All customers tanned successfully.\n");
else
printf("%d customer(s) walked away.\n",num);
}
return 0;
}