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.

 

 

你可能感兴趣的:(400)