Dã®ã²ã¨ã¯ãƒã‚¹ã‚±ãƒƒãƒˆãƒœãƒ¼ãƒ«ãŒå¥½ãã ãŒã€ã‚·ãƒ¥ãƒ¼ãƒˆãŒå¥½ããªãŸã‚ã€ä»–ã®ãƒ†ã‚¯ãƒ‹ãƒƒã‚¯ã¯ã‹ã‚‰ã£ãã—ã§ã‚る。ドリブルã¯ç‰¹ã«è‹¦æ‰‹ã§ã€ç›¸æ‰‹ã®å®ˆå‚™ç¯„囲ã«å…¥ã‚‹ã¨å¿…ãšãƒœãƒ¼ãƒ«ã‚’奪ã‚ã‚Œã¦ã—ã¾ã†ã€‚ãã“ã§ã©ã‚“ãªç›¸æ‰‹ã‚‚å¿…ãšæŠœã去る必殺ã®ãƒ‰ãƒªãƒ–ルを編ã¿å‡ºã™ã“ã¨ã«ã—ãŸã€‚努力ã®æœ«ã€å½¼ã¯é‚ã«æ¶ˆãˆã‚‹ãƒ‰ãƒ©ã‚¤ãƒ´ã€"ディスアピアドライヴ"を完æˆã•ã›ãŸã€‚
ディスアピアドライヴã¯ã€ç›¸æ‰‹ã‚’挑発ã™ã‚‹ã“ã¨ã§é›†ä¸åŠ›ã‚’奪ã„視線を外ã™"ディスディレクション"ã«ã‚ˆã‚Šéš™ã‚’作りã€ãã®éš™ã«æ¬¡å…ƒ(ディメンジョン)ã®å£ã‚’超ãˆã¦ç›¸æ‰‹ã®å®ˆå‚™ç¯„囲をã™ã‚ŠæŠœã‘ã¦ã—ã¾ã†å®Œå…¨ç„¡æ¬ ã®ãƒ‰ãƒ©ã‚¤ãƒ´ã§ã‚る。ã—ã‹ã—ã€æ¬¡å…ƒã®å£ã‚’超ãˆã‚‹ã“ã¨ã¯ä½“ã¸ã®è² æ‹…ãŒå¤§ãã„ãŸã‚ã€æ¬¡å…ƒã‚’超ãˆã‚‰ã‚Œã‚‹å›žæ•°ã«ã¯åˆ¶é™ãŒã‚る。ã¾ãŸã€å¸¸ã«é›†ä¸åŠ›ã‚’使ã†ãŸã‚ã€é€šå¸¸ã®ç§»å‹•ã‚’å«ã‚ã€æ–¹å‘転æ›ãŒ1度ã¾ã§ã—ã‹ã§ããªã„。コート上ã§ã©ã®ã‚ˆã†ã«å‹•ã‘ã°ã€ãƒœãƒ¼ãƒ«ã‚’奪ã‚ã‚Œãšã«æœ€çŸã§ã‚´ãƒ¼ãƒ«ã¾ã§è¾¿ã‚Šç€ã‘ã‚‹ã ã‚ã†ã‹ã€‚
二次元平é¢ä¸Šã«ã€(0,0)を左下ã€(50,94)ã‚’å³ä¸Šã¨ã™ã‚‹é•·æ–¹å½¢ã‚’考ãˆã‚‹ã€‚ã¾ãŸã€ã“ã®å¹³é¢ä¸Šã«ã¯N個ã®å††ãŒå˜åœ¨ã—ã€i番目ã®å††ã®ä¸å¿ƒã®ä½ç½®ã¯(x_i,y_i)ã€åŠå¾„ã¯r_iã§ã‚る。円åŒå£«ã«é‡ãªã‚Šã¯ãªã„。
(25,0)を点Sã€(25,94)を点Gã¨ã—ã€Sã‹ã‚‰Gã¸è‡³ã‚‹çµŒè·¯ã‚’考ãˆã‚‹ã€‚「経路ã€ã¨ã¯ã€(1)Sã¨Gã‚’çµã‚“ã 線分ã§ã‚ã‚‹ã‹ã€(2)長方形内部ã®ä»»æ„ã®ç‚¹Pã«ã¤ã„ã¦ç·šåˆ†SPã¨ç·šåˆ†GPã‚’çµåˆã—ãŸã‚‚ã®ã‹ã‚‰ãªã‚‹ã€‚Sã‹ã‚‰Gã¸ã¨å‘ã‹ã†çµŒè·¯ã®é€”ä¸ã€ä¸€åº¦ã‚る円ã®å†…部ã«å…¥ã£ã¦ã‹ã‚‰ãã®å††ã®å†…部ã‹ã‚‰å‡ºã‚‹ã¾ã§ã®é–“を「円ã®å†…部を通éŽã™ã‚‹åŒºé–“ã€ã¨å®šç¾©ã™ã‚‹ã€‚ãŸã ã—ã€é•·æ–¹å½¢ãƒ»å††ã®å‘¨ä¸Šã¯ãã‚Œãžã‚Œé•·æ–¹å½¢ãƒ»å††ã®å†…部ã«ã¯å«ã¾ã‚Œãªã„ã¨ã™ã‚‹ã€‚
円ã®å†…部を通éŽã™ã‚‹åŒºé–“ã®æ•°ãŒD個以下ã§ã‚るよã†ãªçµŒè·¯ã®ã†ã¡ã€æœ€çŸã®çµŒè·¯ã®é•·ã•ã‚’求ã‚よ。ã©ã†ã—ã¦ã‚‚ゴールã§ããªã„ã¨ãã¯-1ã‚’è¿”ã™ã“ã¨ã€‚
入力ã¯ä»¥ä¸‹ã®å½¢å¼ã‹ã‚‰ãªã‚‹ã€‚
N D x_1 y_1 r_1 ... x_N y_N r_N
1行目ã¯2ã¤ã®æ•´æ•°ã‹ã‚‰ãªã‚Šã€å††ã®å€‹æ•°Nã€å††ã®å†…部を通éŽã§ãる回数DãŒç©ºç™½1æ–‡å—区切りã§ä¸Žãˆã‚‰ã‚Œã‚‹ã€‚ 続ãNè¡Œã¯å††ã®æƒ…å ±ãŒä¸Žãˆã‚‰ã‚Œã‚‹ã€‚ i+1行目(1 \leq i \leq N)ã¯3ã¤ã®æ•´æ•°ã‹ã‚‰ãªã‚Šã€i番目ã®å††ã®ä¸å¿ƒã®x座標x_iã€y座標y_iã€åŠå¾„r_iãŒç©ºç™½1æ–‡å—区切りã§ä¸Žãˆã‚‰ã‚Œã‚‹ã€‚
制約:
最çŸçµŒè·¯ã®é•·ã•ã‚’1è¡Œã«å‡ºåŠ›ã›ã‚ˆã€‚è¡Œã®æœ€å¾Œã§ã¯å¿…ãšæ”¹è¡Œã‚’è¡Œã†ã“ã¨ã€‚ ãŸã ã—ã€ã©ã†ã—ã¦ã‚‚ゴールã§ããªã„ã¨ãã¯-1ã‚’è¿”ã™ã“ã¨ã€‚ æ£ç”ã«å¯¾ã—ã€10^{-7}以下ã®çµ¶å¯¾èª¤å·®ã€ã‚ã‚‹ã„ã¯ç›¸å¯¾èª¤å·®ã¯è¨±å®¹ã•ã‚Œã‚‹ã€‚
1 0 25 47 10
96.2027355887
消ãˆã‚‹ã“ã¨ãŒã§ããªã„ã®ã§ã€è¿‚回ã—ãŸçµŒè·¯ãŒæœ€çŸã§ã‚る。
1 1 25 47 10
94.0000000000
消ãˆã‚‹ã“ã¨ãŒã§ãã‚‹ã®ã§ã€ä¸€ç›´ç·šã«çªã抜ã‘ã‚Œã°ã‚ˆã„。
1 0 20 47 5
94.0000000000
円周上ã¯å††ã®å†…部ã«å«ã¾ã‚Œãªã„ã®ã§ã€æ¶ˆãˆãšã«é€šéŽã™ã‚‹ã“ã¨ãŒã§ãる。
1 0 25 47 40
-1
消ãˆã‚‹ã“ã¨ã‚‚迂回ã™ã‚‹ã“ã¨ã‚‚ã§ããªã„ãŸã‚ã€ã‚´ãƒ¼ãƒ«ã«åˆ°é”ã§ããªã„。
5 2 11 10 16 33 40 18 20 66 10 45 79 14 22 85 8
96.1320937224