I Love ces
发布时间: 2017年7月9日 21:20 时间限制: 1000ms 内存限制: 128M
时间过得好快啊,SHU计算机学院又有新的一批小朋友们进来了。2016级的同学想必也是非常喜欢计算机学院的,于是院长想测试一下大家对计算机的喜爱程度(院长大人别查我水表)。
院长给大家一行由大写字母(A-Z)和小写字母(a-z)组成的字符串,允许同学们在这个字符串里面任意挑选若干个字符,问最多可以组成多少个I LOVE CES(不区分大小写,没有空格,即只要有这8个字符就可以组成一个)。
多组输入,每组一行,输入一个字符串。
字符串长度<=100000。
每组输出一行答案,如题意。
复制
IlovecesiLOVECES
2
想法:
水题
代码:
#include<bits/stdc++.h>
using namespace std;
char a[100010];
int s[30];
int main()
{
while(scanf("%s",a)!=EOF)
{
memset(s,0,sizeof(s));
int len=strlen(a);
for(int i=0;i<len;i++)
{
if('a'<=a[i]&&a[i]<='z')
{
s[a[i]-'a']++;
}
if('A'<=a[i]&&a[i]<='Z')
{
s[a[i]-'A']++;
}
}
int minn=0x3f3f3f3f;
/*for(int i=0;i<30;i++)
{
printf("%d\t",s[i]);
}*/
for(int i=0;i<30;i++)
{
if(i=='i'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='l'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='o'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='v'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='e'-'a')
{
if(minn>s[i]/2)
minn=s[i]/2;
}
if(i=='c'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='s'-'a')
{
if(minn>s[i])
minn=s[i];
}
}
printf("%d\n",minn);
}
return 0;
}
using namespace std;
char a[100010];
int s[30];
int main()
{
while(scanf("%s",a)!=EOF)
{
memset(s,0,sizeof(s));
int len=strlen(a);
for(int i=0;i<len;i++)
{
if('a'<=a[i]&&a[i]<='z')
{
s[a[i]-'a']++;
}
if('A'<=a[i]&&a[i]<='Z')
{
s[a[i]-'A']++;
}
}
int minn=0x3f3f3f3f;
/*for(int i=0;i<30;i++)
{
printf("%d\t",s[i]);
}*/
for(int i=0;i<30;i++)
{
if(i=='i'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='l'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='o'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='v'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='e'-'a')
{
if(minn>s[i]/2)
minn=s[i]/2;
}
if(i=='c'-'a')
{
if(minn>s[i])
minn=s[i];
}
if(i=='s'-'a')
{
if(minn>s[i])
minn=s[i];
}
}
printf("%d\n",minn);
}
return 0;
}