店长推荐Ⅱ
Time Limit: 1000 MS Memory Limit: 65536 K
Total Submit: 97(31 users) Total Accepted: 28(24 users) Special Judge: No
Description

想必大家已经领略了店长的调皮,自从店长知道了vagaa之后就一直沉迷期中不能自拔,教主看到后很是伤心,玩物丧志啊!于是教主教店长了一个vagaa的新用法,资源搜索功能。输入一些关键词后可以搜索出相关共享的好资源,店长得知后又是欣喜若狂。同时,教主又发明一个游戏,是上次的升级版,这次给出一些由字母和数字的玩具的同时,关键字不再是vagaa了,需要自己给出.看最后能组成多少个关键字。

Input

每行输入一个字符串由小写字母和数字组成,每个字符代表一个玩具, 紧接着输入一个关键字,同样由字母和数字组组成,字符串长度0<n<=10000,关键字长度0<m<=200

处理到文件结束

Output

输出能够组成关键字的数量

按照样例输出格式输出并换行.

Sample Input

vagaadsfaagav  ga
asgvasdfzxcades  dea

Sample Output

Case 1: 2
Case 2: 1

Author
void

 

#include<stdio.h>
#include<string.h>
int tt[40],count[40];
char str[10010];
int main()
{
int len,m;
int iCase=0;
while(scanf("%s",&str)!=EOF)
{
iCase++;
len=strlen(str);
memset(tt,0,sizeof(tt));
memset(count,0,sizeof(count));
for(int i=0;i<len;i++)
{
if(str[i]>='0'&&str[i]<='9')
{
m=str[i]-'0'+0;
tt[m]++;

}
else
{
m=str[i]-'a'+10;
tt[m]++;
}
}
scanf("%s",&str);
len=strlen(str);
for(int i=0;i<len;i++)
{
if(str[i]>='0'&&str[i]<='9')
{
m=str[i]-'0'+0;
count[m]++;

}
else
{
m=str[i]-'a'+10;
count[m]++;
}
}
int res=10000;
for(int i=0;i<=9+26;i++)
{
if(count[i]>0)
{
int tmp=tt[i]/count[i];
if(tmp<res) res=tmp;
}
}
printf("Case %d: %d\n",iCase,res);
}
return 0;
}

 


文章来源:http://www.cnblogs.com/kuangbin/archive/2012/02/27/2370325.html