p1400 盗窃

 

背景 Background

怪盗基德 VS OIBH系列  
第一话

描述 Description

怪盗基德煞费苦心历尽九九八十一难终于来到了存放Paris Sunshine的OIBH总部
大楼顶上。基德知道这幢大楼的层数以及哪几层有呆头呆脑的警察。他还知道
Paris Sunshine就藏在两层层数与警卫人数成反比的楼层的中间那层。基德想
要知道那层楼的层数,警卫人数以及到那层所要经过的警卫人数。基德行踪不
定,可能从楼底往楼上走,也可能从楼顶往楼下走。

输入格式 InputFormat

输入文件共n+1行。第一行为2个数a,b。分别表示大楼的层数以及怪盗基德会从楼
下还是楼上出发。b=1则表示从楼顶出发,b=0表示从楼底出发。第2行到第n+1行
每行一个整数。表示该层警卫人数。

输出格式 OutputFormat

输出文件共1行,为两个用空格隔开的整数,分别是Paris Sunshine的藏匿地点以
及基德盗走Paris Sunshine所要经过楼层的警卫总数。

样例输入 SampleInput [复制数据]

5 136145

样例输出 SampleOutput [复制数据]

2 16

数据范围和注释 Hint

输入数据保证只有唯一一层楼符合条件。

时间限制 TimeLimitation

基德可不能等到警卫来抓他,所以你必须在1S内找出正确答案。

来源 Source

From 玛维-影之歌

 

附代码:

  program p1400;

var a,b,i,j,k,s:integer;

    g:array[0..99999]of longint;

begin

  readln(a,b);

  for i:=1 to a do

    readln(g[i]);

  for i:=1 to a-1 do

   for j:=i+1 to a do

    if g[i]*i=g[j]*j

     then k:=(i+j)div 2;

 s:=0;

  if b=1

   then for i:=a downto k do

         s:=s+g[i]

   else for i:=1 to k do

          s:=s+g[i];

   write(k,' ',s);

readln;

readln;

end.
 

 

posted @ 2015-02-19 15:31  111qqz  阅读(157)  评论(0编辑  收藏  举报