“盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛 C

时间过得好快啊,SHU计算机学院又有新的一批小朋友们进来了。2016级的同学想必也是非常喜欢计算机学院的,于是院长想测试一下大家对计算机的喜爱程度(院长大人别查我水表)。

院长给大家一行由大写字母(A-Z)和小写字母(a-z)组成的字符串,允许同学们在这个字符串里面任意挑选若干个字符,问最多可以组成多少个I LOVE CES(不区分大小写,没有空格,即只要有这8个字符就可以组成一个)。 

输入

多组输入,每组一行,输入一个字符串。
字符串长度<=100000 

输出

每组输出一行答案,如题意。

样例输入1 复制
IlovecesiLOVECES
样例输出1
2

既然是没有顺序,那么就算数一数有几个ilovecs,主要e应该有两个才能组成
 1 #include<math.h>
 2 #include<string.h>
 3 #include<stack>
 4 #include<set>
 5 #include<queue>
 6 #include<vector>
 7 #include<map>
 8 #include<iostream>
 9 #include<algorithm>
10 #define MAXN 1010000
11 #define LL long long
12 #define ll __int64
13 #define INF 0xfffffff
14 #define mem(x) memset(x,0,sizeof(x))
15 #define PI acos(-1)
16 #define eps 1e-8
17 using namespace std;
18 int a[1000];
19 int main(){
20     string s;
21     while(cin>>s){
22         int ansi=0;
23         int ansl=0;
24         int anso=0;
25         int ansv=0;
26         int anse=0;
27         int ansc=0;
28         int anss=0;
29         for(int i=0;i<s.length();i++){
30             if(s[i]=='i'||s[i]=='I'){
31                 ansi++;
32             }
33             if(s[i]=='l'||s[i]=='L'){
34                 ansl++;
35             }
36             if(s[i]=='o'||s[i]=='O'){
37                 anso++;
38             }
39             if(s[i]=='v'||s[i]=='V'){
40                 ansv++;
41             }
42             if(s[i]=='e'||s[i]=='E'){
43                 anse++;
44             }
45             if(s[i]=='c'||s[i]=='C'){
46                 ansc++;
47             }
48             if(s[i]=='s'||s[i]=='S'){
49                 anss++;
50             }
51         }
52         int ans=0;
53       //  cout<<ansi<<" "<<ansl<<" "<<anso<<" "<<ansv<<" "<<anse<<" "<<ansc<<" "<<anss<<endl;
54         while(ansi>=0&&ansc>=0&&anso>=0&&ansv>=0&&anse>=0&&ansl>=0&&anss>=0){
55             //ans++;
56             ansi--;
57             ansc--;
58             anso--;
59             ansv--;
60             anse-=2;
61             ansl--;
62             anss--;
63             if(ansi>=0&&ansc>=0&&anso>=0&&ansv>=0&&anse>=0&&ansl>=0&&anss>=0){
64                 ans++;
65             }
66             //cout<<ansi<<" "<<ansl<<" "<<" "<<anso<<" "<<ansv<<" "<<anse<<" "<<ansc<<" "<<anss<<endl;
67         }
68         cout<<ans<<endl;
69     }
70     return 0;
71 }

 

转载于:https://www.cnblogs.com/yinghualuowu/p/7163678.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值