发布时间: 2017年7月9日 21:20 时间限制: 1000ms 内存限制: 128M
描述时间过得好快啊,SHU计算机学院又有新的一批小朋友们进来了。2016级的同学想必也是非常喜欢计算机学院的,于是院长想测试一下大家对计算机的喜爱程度(院长大人别查我水表)。
院长给大家一行由大写字母(A-Z)和小写字母(a-z)组成的字符串,允许同学们在这个字符串里面任意挑选若干个字符,问最多可以组成多少个I LOVE CES(不区分大小写,没有空格,即只要有这8个字符就可以组成一个)。
输入多组输入,每组一行,输入一个字符串。 字符串长度 <=100000 。
输出每组输出一行答案,如题意。
样例输入1 复制 IlovecesiLOVECES 样例输出1 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; }