【牛客练习赛22A】

题目:

链接:https://www.nowcoder.com/acm/contest/132/A
来源:牛客网

题目描述

给6个火柴棍,问能不能拼成 “熊”或者“象”
“熊”:4根棍子长度一样,另外2根棍子长度不一样
“象”:4根棍子长度一样,另外2根棍子长度一样。
如果可以拼出熊,输出“Bear”
如果可以拼出象,输出“Elephant”
如果都不可以拼出,输出“Hernia”

输入描述:

一行六个数表示每个火柴棍的长度

输出描述:

输出一行一个字符串表示答案

代码:

#include<iostream>
#include<algorithm>
#include<set>
using namespace std;
bool cmp(int a,int b)
{
    return a>b;
}
int main()
{
    int a[6];
    while(cin>>a[0]>>a[1]>>a[2]>>a[3]>>a[4]>>a[5])
    {
        set<int> s;
        s.insert(a[0]);
        s.insert(a[1]);
        s.insert(a[2]);
        s.insert(a[3]);
        s.insert(a[4]);
        s.insert(a[5]);
        if(s.size()==1)cout<<"Elephant"<<endl;
        else if(s.size()==2)
        {
            int b[10]={0};
            for(int i=0;i<6;i++)
            {
                b[a[i]]++;
            }
            sort(b,b+10,cmp);
            if(b[0]==4)cout<<"Elephant"<<endl;
            else if(b[0]==5)cout<<"Bear"<<endl;
        }
        else if(s.size()==3)
        {
            cout<<"Bear"<<endl;
        }
        else cout<<"Hernia"<<endl;
 
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/zero_979/article/details/81054839