[置顶] 2013腾讯编程马拉松初赛第4场(3月24)(HDU 4520 HDU4521 HDU4522 HDU4523 HDU4524)...
? ? 話說昨天比賽終于拿到一個(gè)不錯(cuò)的名次,rank77,對(duì)于我們這種ACM弱菜的學(xué)校來說已經(jīng)很好了,可惜我1003用了倆floyd超時(shí),如果我最近稍微搞搞圖論的話,用個(gè)bellman,或者SPFA,絕對(duì)超不了了就。。。哎。。他們的1002貌似也差點(diǎn)出來。。。還有1004被坑人的wa了兩次。。。。
? ? 理工大的孩子們看到之后,一定好好整理下,不管是這場(chǎng)比賽,還是前幾場(chǎng),比完之后整理再做這些題比較重要。這次比賽的題都不是出不來的,大家加油了。。。
第一題:小Q系列故事——最佳裁判
鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4520
題解:水題啊。。懶得看。。貼大牛畢魯陽的代碼
?
#include<cstdio> #include<cstring> #include<cstdlib> #include<algorithm> #include<cmath> using namespace std;struct cp {int num;double p; } P[22]; int cmp(cp a, cp b) {return a.p > b.p ? 1 : 0; } int main() {int n;double sum = 0 ;double ave;int ans;double m;while(scanf("%d",&n),n){sum = 0;m = 999999999;for(int i = 0; i < n; i++){scanf("%lf",&P[i].p);P[i].num = i+1;}sort(P, P+n,cmp);for(int i = 1; i < n-1; i++){sum += P[i].p;}ave = sum / (n-2);for(int i = 0; i <n; i++){if(abs(P[i].p-ave)<m){m = abs(P[i].p-ave);ans = P[i].num;}}printf("%d\n",ans);}return 0; }?
第二題:小明系列問題——小明序列
鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4521
題解:
第三題:湫湫系列故事——過年回家
鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4522
題解:
第四題:威威貓系列故事——過生日
鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4523
題解:兩個(gè)地方要注意,第一就是我一開始沒看到數(shù)據(jù)量wa了一次。。。10^100 我還用int。。真驚了。。當(dāng)時(shí)只圖快了。。結(jié)果這下就是20分鐘。。哎。。。第二點(diǎn)要注意就是。。杭電相當(dāng)坑人的M。。他的范圍是 M>0 的!!!這就意味著當(dāng)M為1或者2的時(shí)候。。。n和p無論是多少都分割不出來1邊形和2邊形。。。。又WA一次。。。哎。。欲速則不達(dá)啊!!一共罰了40分鐘。。。
?
import java.math.BigInteger; import java.util.Scanner;public class main {public static void main(String[] args) {BigInteger n, m, p;Scanner cin = new Scanner(System.in);while (cin.hasNextBigInteger()){n = cin.nextBigInteger();m = cin.nextBigInteger();p = cin.nextBigInteger();BigInteger tmp1 = n.add(p);BigInteger tmp2 = BigInteger.valueOf(3);if (tmp1.compareTo(m) < 0 || m.compareTo(tmp2) < 0)System.out.println("NO");elseSystem.out.println("YES");}} }?
第五題:鄭廠長系列故事——逃離迷宮
鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=4524
題解:一開始沒看懂題意,好郁悶,我理解能力的確有點(diǎn)問題,題目的意思,右邊倒數(shù)第一個(gè)格子和倒數(shù)第二個(gè)格子必須同時(shí)消失,否則鄭廠長就無法進(jìn)行操作。。。就是這里有點(diǎn)坑。。其他都沒什么難的。。
?
#include <iostream> using namespace std; int main() {int t;scanf("%d", &t);while (t--){int n;scanf("%d", &n);bool flag = true;int i, tmp, num=0;for (i=0; i<n; i++){scanf("%d", &tmp);if (i==n-1 && tmp != num) flag = false;if (tmp < num) flag = false;else num = tmp - num;}if (flag)puts("yeah~ I escaped ^_^");elseputs("I will never go out T_T");}return 0; }?
?
轉(zhuǎn)載于:https://www.cnblogs.com/xinyuyuanm/archive/2013/03/25/2980558.html
總結(jié)
以上是生活随笔為你收集整理的[置顶] 2013腾讯编程马拉松初赛第4场(3月24)(HDU 4520 HDU4521 HDU4522 HDU4523 HDU4524)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华夏银行信用卡积分规则是什么?积分查询看
- 下一篇: 代还2万信用卡怎么收费?代还信用卡费用介