2013腾讯编程马拉松初赛第四场(3.24)题解
今天上午没事做了下昨天腾讯的比赛,发现竟然全部都会,早知道就选昨天的比赛就好了,废话不多说,下面是我的一些想法和代码。
http://acm.hdu.edu.cn/showproblem.php?pid=4520
hdu 4520:
小Q系列故事——最佳裁判过去的2012年对小Q来说是很悲催的一年,失恋了12次,每次都要郁闷1个来月。
好在小Q是个体育迷,在最痛苦的时候,他常常用观看各种体育节目来麻醉自己,比如伦敦奥运会期间,小Q就常常在周末邀上一群单身同事聚在自己的蜗居,一边畅饮啤酒,一边吹牛。
小Q最喜欢看的是跳水,主要原因也是因为这个项目有中国人参加,而且中国队员获胜的几率很大,一般不会再给自己添堵,不然何谈看体育疗情伤呢。
跳水项目的一个重要环节就是裁判打分,小Q他们有时候会觉得某个裁判不公平,是不是有意在压中国队员的分数。于是每当一个队员跳水完毕,他们几个也像电视上的裁判那样给队员打分,并且规定,谁的分数和最终得分最接近谁就是他们当中的最佳裁判,现场奖励啤酒一杯!
其中,最终得分是这样计算的:N个人打分,去掉一个最高分,去掉一个最低分,然后剩余分数相加,再除以N-2即为最终得分。
凭借“看体育疗情伤”而练就的专业体育知识,小Q几乎每局必胜,这一夜,小Q注定要烂醉如泥了......
思路:很水的题,把最终得分求出来然后一个一个比较即可。
#include <iostream>#include <string.h>#include <stdio.h>#include <algorithm>#define maxn 1000010using namespace std;int a[maxn];int min(int a,int b){ return a<b?a:b;}int main(){ freopen("dd.txt","r",stdin); int ncase,n,i; scanf("%d",&ncase); while(ncase--) { scanf("%d",&n); int tru=1; for(i=1;i<=n;i++) { scanf("%d",&a[i]); } for(i=1;i<n;i++) { if(a[i]>a[i+1]) { tru=0; break; } else { a[i+1]-=a[i]; } } if(!tru||a[n]) printf("I will never go out T_T\n"); else printf("yeah~ I escaped ^_^\n"); } return 0;}