什么都不说了。
http://codeforces.com/contest/382/submission/5728990
因为比赛的时候被坑了,所以我写了特别详尽的注释。。。
直接看代码就好。。。
我是不是应该放弃使用PHP来打CF?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
| <?php
$in=fgets(STDIN);
$in=fgets(STDIN);
$num=explode(" ", $in); foreach ($num as &$v) { $v=intval($v); }
$len=count($num);
if($len<=1){ echo -1; exit(); }
sort($num);
$error=array();
for($i=1;$i<$len;$i++){ $ds=$num[$i]-$num[$i-1]; if(array_key_exists($ds, $error)){ array_push($error[$ds],$i); }else{ $error[$ds]=array($i); } }
$errorcount=count($error);
$result=array();
if($errorcount<=0){ exit(); }else
if($errorcount==1){ $d=array_keys($error); $d=(int)$d[0]; if($len==2){ if($d%2==0) array_push($result, $num[1]-$d/2); } array_push($result, $num[0]-$d, $num[$len-1]+$d); $result=array_unique($result); sort($result); echo count($result); echo "n"; foreach ($result as $v) { echo $v." "; } exit(); }else
if($errorcount==2){ $d=array_keys($error); sort($d); if($d[1]-$d[0]==$d[0]) { if(count($error[$d[1]])==1){ $result=$num[$error[$d[1]][0]]-$d[0]; echo "1n".$result; exit(); } } echo 0; exit(); }
else{ echo 0; exit(); } ?> <!doctype html> <html> <head> <title>Zyzsdy</title> </head> <body> <p>这数据也太坑了。。。。</p> <p> </p> <p>@author: Zyzsdy</p> <p>@Website: <a href="http://www.namido.net" target="_blank">http: <p>@date: 2014/1/18 15:02 (UTC+8)</p> <p> </p> <p>感想: 这次CF就过一题居然没扣分。。。。。。</p> <p>不过我这题差一点就做出来了。。。</p> <p>。。。。。。。</p> <p>唉。。。。</p> </body> </html>
|