青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

oyjpArt ACM/ICPC算法程序設計空間

// I am new in programming, welcome to my blog
I am oyjpart(alpc12, 四城)
posts - 224, comments - 694, trackbacks - 0, articles - 6

PKU1925 Spiderman 【DP】

Posted on 2007-04-05 20:41 oyjpart 閱讀(2350) 評論(2)  編輯 收藏 引用 所屬分類: ACM/ICPC或其他比賽

Spiderman
Time Limit:5000MS  Memory Limit:65536K
Total Submit:1762 Accepted:197

Description
Dr. Octopus kidnapped Spiderman's girlfriend M.J. and kept her in the West Tower. Now the hero, Spiderman, has to reach the tower as soon as he can to rescue her, using his own weapon, the web.

From Spiderman's apartment, where he starts, to the tower there is a straight road. Alongside of the road stand many tall buildings, which are definitely taller or equal to his apartment. Spiderman can shoot his web to the top of any building between the tower and himself (including the tower), and then swing to the other side of the building. At the moment he finishes the swing, he can shoot his web to another building and make another swing until he gets to the west tower. Figure-1 shows how Spiderman gets to the tower from the top of his apartment – he swings from A to B, from B to C, and from C to the tower. All the buildings (including the tower) are treated as straight lines, and during his swings he can't hit the ground, which means the length of the web is shorter or equal to the height of the building. Notice that during Spiderman's swings, he can never go backwards.


You may assume that each swing takes a unit of time. As in Figure-1, Spiderman used 3 swings to reach the tower, and you can easily find out that there is no better way.

 

Input
The first line of the input contains the number of test cases K (1 <= K <= 20). Each case starts with a line containing a single integer N (2 <= N <= 5000), the number of buildings (including the apartment and the tower). N lines follow and each line contains two integers Xi, Yi, (0 <= Xi, Yi <= 1000000) the position and height of the building. The first building is always the apartment and the last one is always the tower. The input is sorted by Xi value in ascending order and no two buildings have the same X value.

Output
For each test case, output one line containing the minimum number of swings (if it's possible to reach the tower) or -1 if Spiderman can't reach the tower.

Sample Input

2
6
0 3
3 5
4 3
5 5
7 4
10 4
3
0 3
3 4
10 4

 

Sample Output

3
-1

 

Source
Beijing 2004 Preliminary@POJ

這是DP題,根據坐標DP是比較好的選擇,提交中wa多次。經回復指點 才注意到建筑物高度相乘越界了 謝謝提醒了

//Solution by oyjpArt
#include <stdio.h>
#include <math.h>
#include <string.h>
const int N = 5010;
const int M = 1000010;
int x[N], y[N], dp[M], nb;
const int MAXINT = 2000000000;
#define Min(a,b) ((a) < (b) ? (a) : (b))

int main() {
 int ntc, i, j;
 scanf("%d", &ntc);
 while(ntc--) {
  scanf("%d", &nb);
  for(i = 0; i<nb; i++)  scanf("%d %d", x+i, y+i);
  int m = x[nb-1];
  memset(dp, -1, (m+1)*sizeof(dp[0]));
  dp[x[0]] = 0;
  double h = y[0]; 
  for(i = 1; i<nb; i++) { //以1..i的建筑為中介進行飛行
   int d = sqrt(2*y[i]*h - h*h); //不會墜落到地上的最長距離 sqrt(y[i]*y[i]-sqare(y[i]-h))
   for(j = 1; j<=d; j++) { //DP
    if(x[i]-j < x[0]) break; //無用狀態
    if(dp[x[i]-j] == -1) continue; //不可達
    int k = x[i]+j < m ? x[i]+j : m;
    if(dp[k] == -1) dp[k] = dp[x[i]-j]+1;
    else dp[k] = Min(dp[k], dp[x[i]-j]+1);
   }//for
  }//for
  printf("%d\n", dp[m]);
 }
 return 0;
}

Feedback

# re: PKU1925 Spiderman 【DP】  回復  更多評論   

2007-04-11 15:24 by mark
int的話相乘后可能越界了

# re: PKU1925 Spiderman 【DP】  回復  更多評論   

2007-04-16 20:53 by oyjpart
謝謝提醒 呵呵
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一区二区免费看| 欧美一区二区精品在线| 欧美电影免费网站| 久久久久国内| 亚洲电影一级黄| 亚洲福利视频一区二区| 久久中文字幕一区| 亚洲精品视频一区二区三区| 亚洲免费久久| 国产欧美日韩免费| 久久久久久久97| 蜜桃久久av| 亚洲一区二区三区在线| 亚洲一区日韩| 亚洲成人影音| 一本色道久久综合一区| 国产拍揄自揄精品视频麻豆| 女人香蕉久久**毛片精品| 欧美成人国产| 亚洲欧美一区二区原创| 久久久久久9999| 亚洲午夜羞羞片| 久久久久久一区| 一区二区三区成人| 先锋影音久久| 99视频在线观看一区三区| 午夜一级久久| 一区二区三区色| 久久久久国产精品厨房| 亚洲一区二三| 美女主播视频一区| 午夜精品久久久| 欧美sm重口味系列视频在线观看| 小黄鸭精品aⅴ导航网站入口| 久久免费国产| 久久国产一区二区| 欧美日韩mp4| 另类激情亚洲| 国产精品外国| 99在线精品视频| 亚洲电影免费观看高清完整版在线| 亚洲少妇在线| 亚洲精品黄色| 久久综合久久综合久久综合| 欧美一区在线看| 欧美日韩综合在线| 亚洲国产一区二区三区青草影视| 国产亚洲一区二区三区| 中日韩美女免费视频网址在线观看| 在线电影院国产精品| 欧美一区二区三区免费看| 亚洲视频大全| 欧美黄色小视频| 欧美激情日韩| 亚洲国产99精品国自产| 欧美一区二区三区免费观看视频| 亚洲免费在线精品一区| 欧美人与性动交α欧美精品济南到| 欧美成人午夜77777| 精品99视频| 久久精品国产亚洲5555| 久久国产精品72免费观看| 欧美性一区二区| 一区二区欧美日韩视频| 亚洲一级影院| 国产精品久久一区二区三区| 制服丝袜激情欧洲亚洲| 亚洲免费网址| 国产精品一级| 欧美在线在线| 暖暖成人免费视频| 亚洲国产日韩一级| 欧美成人精品三级在线观看| 亚洲激情在线观看| 亚洲精品欧美一区二区三区| 欧美激情精品久久久久久蜜臀| 91久久中文| 亚洲午夜精品| 国产农村妇女精品一区二区| 性做久久久久久| 久久综合久久久| 最新成人av网站| 欧美日韩免费观看中文| 亚洲香蕉网站| 久久久国产成人精品| 一区在线电影| 欧美精品一区二区三区视频| 亚洲视频电影在线| 久久精品国产一区二区三区免费看| 韩日欧美一区二区三区| 久久综合伊人77777蜜臀| 亚洲国产欧美久久| 亚洲欧美中文字幕| 国内精品久久久久影院优| 欧美大片免费观看| 亚洲一区二区三区四区五区午夜 | 亚洲大胆av| 欧美成人免费网| 亚洲午夜激情网站| 美女精品在线| 亚洲一区二区三区三| 狠狠干综合网| 欧美三级第一页| 久久久精品国产99久久精品芒果| 亚洲欧洲视频在线| 欧美中文字幕不卡| 亚洲精品乱码久久久久久| 国产精品久久久久久久浪潮网站| 久久久久久亚洲精品杨幂换脸| 亚洲精品美女在线观看| 久久精品最新地址| 亚洲精品少妇网址| 国内精品**久久毛片app| 欧美激情一区二区三区全黄| 欧美中在线观看| 夜夜夜久久久| 亚洲国产高清在线观看视频| 久久精品一区二区三区中文字幕| 一区二区欧美精品| 在线观看精品一区| 国产日韩欧美精品在线| 欧美日本不卡高清| 久久综合中文色婷婷| 亚洲欧美综合精品久久成人| 一区二区三区色| 亚洲激情av| 免费不卡欧美自拍视频| 久久福利影视| 午夜电影亚洲| 亚洲欧美视频一区| 夜夜精品视频| 亚洲精品在线免费观看视频| 伊人精品成人久久综合软件| 国产在线高清精品| 国产精品女主播| 国产精品久久久久久久久久久久| 欧美日韩国产小视频在线观看| 欧美va亚洲va香蕉在线| 久久久午夜视频| 久久久久久久综合色一本| 亚洲在线国产日韩欧美| 亚洲视频免费看| 正在播放日韩| 亚洲一级二级在线| 亚洲视频在线观看视频| 一区二区三区视频观看| 中国成人黄色视屏| 一区二区毛片| 亚洲欧美日韩国产成人| 亚洲午夜精品在线| 亚洲一区二区在线免费观看| 亚洲欧美卡通另类91av| 亚洲欧美日韩精品久久亚洲区 | 美女精品视频一区| 狼狼综合久久久久综合网| 男女激情久久| 亚洲国产精品久久久| 亚洲精品国产精品乱码不99按摩 | 麻豆成人av| 欧美激情一区二区三区成人| 最新国产精品拍自在线播放| 亚洲日本视频| 一区二区高清视频| 午夜精品成人在线视频| 久久天天躁夜夜躁狠狠躁2022| 久久久亚洲国产天美传媒修理工| 欧美 日韩 国产一区二区在线视频 | 欧美1区免费| 亚洲国内在线| 亚洲性人人天天夜夜摸| 欧美一区免费视频| 另类人畜视频在线| 欧美精品成人91久久久久久久| 欧美吻胸吃奶大尺度电影| 国产午夜精品全部视频在线播放 | 一本色道久久精品| 性欧美超级视频| 欧美大片免费观看| 一区二区三区.www| 久久久水蜜桃| 国产精品久久久久久久久久久久久 | 99热这里只有成人精品国产| 午夜精品久久久久久久久久久久| 久久久之久亚州精品露出| 亚洲国产欧美精品| 亚洲在线免费观看| 免费在线视频一区| 国产乱码精品一区二区三区不卡| 亚洲欧洲日产国产综合网| 午夜精品一区二区三区在线播放| 欧美电影免费网站| 亚洲欧美在线一区二区| 欧美国产一区二区| 国产一区二区三区在线观看网站| 一本久道久久综合狠狠爱| 狼人社综合社区| 午夜影视日本亚洲欧洲精品| 欧美色一级片| 99国内精品久久| 欧美成人免费观看|