QUST日常训练(1)北极熊和大象
来源:互联网 发布:要成为一个编程大牛 编辑:程序博客网 时间:2024/05/16 19:03
来自圣彼得堡动物园的北极熊Menshykov,Uslada和来自基普动物园的大象Horace取得了6支木棍,他们要一起来玩一个木棍游戏。 Menshykov,Uslada和Horace决定用这些木棍去做一头大象或一头熊。它们可以按照以下方法去拼接一个动物:
l 四根棒代表动物的腿,这些木棒应具有相同的长度。
l 剩下的两根代表动物的头部和身体。熊的头棒必须比身体棒短。然而,大象有一个长鼻子,他的头棒必须和身体棒相等。请注意,以上腿棒和头部以及身体棒之间的关系没有任何限制。
动物园饲养员希望比赛结束后棒子没有损坏。你的任务是找出哪些动物可以从给定的一组棒组合成。
输入
输入第一行为数据组数T;
每个测试数据输入6个整数li;
输出
如果可以组合成熊,输出"Bear",如果可以组合成大象,输出"Elephant",否则输出"Alien"!
样例输入
34 2 5 4 4 44 4 5 4 4 51 2 3 4 5 6
样例输出
BearElephantAlien
提示
【数据说明】
对于 30%的数据,T=1;
对于 80%的数据,0<T<10;
对于 100%的数据,0<T<90,1<=li<=9.
分析:水题(锻炼一下map。。。
#include <cstdio>#include <cstring>#include <map>#include <iostream>#include <algorithm> using namespace std; int main(){ int t; cin>>t; map <int,int> p; while(t--) { p.clear(); int b; for (int i=0;i<6;i++) { cin>>b; if ( p.count(b) == 0) p[b]=1; else p[b]++; } int ok=0; map<int,int>::iterator it=p.begin(); for (;it!=p.end();it++) { if (it->second >=4) {it->second-=4;ok=1;break;} } if (!ok) printf("Alien\n"); else { int a[2],g=0; for (it=p.begin();it!=p.end();it++) { if (it->second>0 && it->second <2) a[g++]=it->first; else if (it->second == 2) a[0]=a[1]=it->first; } if (a[0]-a[1] == 0) printf("Elephant\n"); else printf("Bear\n"); } } return 0;}
)
0 0
- QUST日常训练(1)北极熊和大象
- QUST日常训练(1)分数修改
- QUST日常训练(1)乘积最大
- QUST每周训练1
- QUST每周训练2
- 北极熊
- 日常训练赛(国庆)
- 蚂蚁和大象
- 蚂蚁和大象系列
- 蚂蚁和大象
- HEU日常训练10.02
- 日常训练小结
- 日常训练20161012 道路网
- 日常训练20161012 醉酒
- 日常训练20161014 跟踪
- 日常训练20161018 证据
- 日常训练20161018 subset
- 日常训练 平均数
- Ubuntu Linux 安装wine 和 winetricks
- 大话设计模式-建造者模式
- Android性能优化案例研究(上)
- 002 ZeroMQ PUB and SUB
- ios之使用cocoa框架联网
- QUST日常训练(1)北极熊和大象
- RxJava实例(二)
- 进程与线程的区别与联系
- ArcMap地图视图放大缩小反向设置的三种方法及详细步骤
- 单调连续递增子序列(O(n2)
- 深入理解BFC和Margin Collapse
- nandflash块设备驱动
- ViewController的生命周期
- 【JQuery】文本框的focus和blur事件