1039 到底买不买 (20 分)
分析:我这里是先设立了一个数组,将接收到的每个字符对应的acssi码的值加1,比如输入了一个a,那么str1[97[++;
然后再输入第二串字符串的时候,没输入一个字符就让它对应的acssi码的值减1。最后遍历并统计负数之和与正数之和。
如果负数不为0,那么就是No 负数为0,那么就是Yes。可以想一想为什么这里不用正数是否为0 来做判断条件
代码如下:
int main()
{
char c;
int a[128]={0},i,t1=0,t2=0;
while((c=getchar())!='\n') a[(int)c]++;
while((c=getchar())!='\n') a[(int)c]--;
for(i=0;i<128;i++)
{
if(a[i]>0) t1+=a[i];
if(a[i]<0) t2-=a[i];
}
if(t2)
printf("No %d",t2);
else
printf("Yes %d",t1);
return 0;
}