链接:https://ac.nowcoder.com/acm/contest/24413/E
来源:牛客网
韬神和小钢终于来到了黑衣人所在的住所,现在他们必须要打开黑衣人住所的所有门,这时,韬神带来的装备就发挥出作用了。现在已经知道的是每个门的密码都是一样的'w','a','n','g',但是韬神带来的材料有限,且带来的材料中含有字母·是·随机生成的,现在韬神和小钢可以在这些随机生成的字母中挑选出'w','a','n','g'组成一把钥匙或者'w','a','n','g','a','n','g'组成俩把钥匙,那么笨笨的小钢犯迷糊了,最多可以造出多少把钥匙呢?
韬神实在看不下自己小弟这么傻傻的样子,告诉了他答案。
输入描述:
第一行一个正整数n(n<=10000000),表示字符串长度。
第二行一串只含有小写字母的字符串。
输出描述:
输出韬神和小钢最多能造出多少把钥匙。
示例1
输入
4
wang
输出
1
#include <stdio.h>
int main()
{
int n, i, a, j, g, w, b, c;
int num[3];
char str[100000000];
scanf("%d", &n);
w=0;
a=0;
j=0;
g=0;
getchar();
for(i=0;i<n;i++){
scanf("%c", &str[i]);
}
for(i=0;i<n;i++){
if(str[i]=='w'){
w++;
}else if(str[i]=='a'){
a++;
}else if(str[i]=='n'){
j++;
}else if(str[i]=='g'){
g++;
}
}
if(a==j&&j==g&&j==w*2){
printf("%d", a);
}else{
num[0]=a;
num[1]=j;
num[2]=g;
for(b=1;b<3;b++){
if(num[0]>num[b]){
num[0]=num[b];
}
}
c=num[0];
// if(w%2==0){
if(c>=w*2){
printf("%d", 2*w);
}else{
printf("%d", c);
}
// }else{
//if(c>=w*2){
// printf("%d", 2*w);
// }else{
// }
}
return 0;
}