西暦20XX 年,å¦æ ¡å¯¾æŠ—é”法競技大会ãŒé–‹ã‹ã‚Œã¦ã„ãŸï¼Žå¤§ä¼šã‚‚ã„よã„よ,最終競技を残ã™ã®ã¿ã¨ãªã£ãŸï¼Žã‚ãªãŸã¯ãã®ç«¶æŠ€ã®é¸æ‰‹ã®1 人ã§ã‚る.
ã‚ãªãŸãŒå‡ºå ´ã™ã‚‹ç«¶æŠ€ã¯ï¼Œç©ºé–“内ã«é…ç½®ã•ã‚ŒãŸé’ã„オブジェをã™ã¹ã¦ç ´å£Šã™ã‚‹ã¾ã§ã®æ™‚間を競ã†ã¨ã„ã†ã‚‚ã®ã§ã‚る.é¸æ‰‹ã¯ç«¶æŠ€ç”¨ã®éŠƒã®æŒè¾¼ãŒè¨±å¯ã•ã‚Œã¦ã„る.空間内ã«ã¯è¤‡æ•°ã®é’ã„オブジェã¨åŒã˜æ•°ã®èµ¤ã„オブジェ,ãã—ã¦è¤‡æ•°ã®éšœå®³ç‰©ãŒé…ç½®ã•ã‚Œã¦ã„る.é’ã„オブジェã¨èµ¤ã„オブジェã¯1 対1 ã«å¯¾å¿œã—ã¦ãŠã‚Šï¼Œèµ¤ã„オブジェãŒé…ç½®ã•ã‚Œã¦ã„る座標ã‹ã‚‰é’ã„オブジェã«å¼¾ã‚’æ’ƒã¤ã“ã¨ã§é’ã„ã‚ªãƒ–ã‚¸ã‚§ã‚’ç ´å£Šã—ãªã‘ã‚Œã°ãªã‚‰ãªã„.空間内ã«é…ç½®ã•ã‚Œã¦ã„る障害物ã¯çƒçŠ¶ã§ã‚り,少ã—ãšã¤çµ„æˆãŒç•°ãªã£ã¦ã„ã‚‹ãŒï¼Œé€šå¸¸ã®å¼¾ã§ã‚ã‚Œã°éšœå®³ç‰©ã«è§¦ã‚Œã‚‹ã¨å¼¾ã¯ãã®å ´ã«æ¢ã¾ã£ã¦ã—ã¾ã†ï¼Ž
競技ã«ä½¿ã‚れる弾ã¯Magic Bullet ã¨ã„ã†ç‰¹æ®Šãªå¼¾ã§ã‚る.ã“ã®å¼¾ã¯é”力をãŸã‚込むã“ã¨ãŒã§ã,弾ãŒéšœå®³ç‰©ã«æŽ¥è§¦ã—ãŸéš›ã«è‡ªå‹•çš„ã«é”力を消費ã—,弾ãŒè²«é€šã™ã‚‹é”法ãŒç™ºå‹•ã™ã‚‹ï¼Žéšœå®³ç‰©ã®çµ„æˆã®é•ã„ã‹ã‚‰ï¼Œè²«é€šã™ã‚‹ãŸã‚ã«å¿…è¦ãªé”法やãã®ç™ºå‹•ã®ãŸã‚ã«æ¶ˆè²»ã™ã‚‹é”力ã®é‡ã¯ç•°ãªã£ã¦ã„る.ã“ã®ãŸã‚,ã‚る障害物ã«å¯¾ã™ã‚‹é”法ãŒç™ºå‹•ã—ãŸå¾Œã§ã‚ã£ã¦ã‚‚,別ã®éšœå®³ç‰©ã‚’貫通ã™ã‚‹ãŸã‚ã«ã¯æ–°ãŸã«åˆ¥ã®é”法を発動ã™ã‚‹å¿…è¦ãŒã‚る.ã¾ãŸï¼Œå¼¾ãŒè¤‡æ•°ã®éšœå®³ç‰©ã«åŒæ™‚ã«æŽ¥è§¦ã—ãŸå ´åˆã¯åŒæ™‚ã«é”法ãŒç™ºå‹•ã™ã‚‹ï¼Žå¼¾ã«è¾¼ã‚られãŸé”力ã®é‡ã¯é”法ã®ç™ºå‹•ã®ãŸã³ã«æ¸›å°‘ã™ã‚‹ï¼Ž
障害物ã®ä½ç½®ã‚„大ãã•ï¼Œè²«é€šã™ã‚‹é”法ã®ç™ºå‹•ã«å¿…è¦ãªé”力ã®é‡ã¯ã™ã§ã«å…¬é–‹ã•ã‚Œã¦ã„ã‚‹ã®ã«å¯¾ã—,赤ã„オブジェ,é’ã„オブジェã®ä½ç½®ã¯å…¬é–‹ã•ã‚Œã¦ã„ãªã„.ã—ã‹ã—,éŽåŽ»ã®åŒä¸€ç«¶æŠ€ã®æƒ…å ±ã‹ã‚‰ï¼Œã‚る程度オブジェã®ä½ç½®ã‚’予想ã™ã‚‹ã“ã¨ãŒã§ããŸï¼Žé”力を弾ã«ã“ã‚ã‚‹ã“ã¨ã¯éžå¸¸ã«ä½“力を消耗ã—ã¦ã—ã¾ã†ãŸã‚,ã‚ãªãŸã¯é”力をã§ãã‚‹ã ã‘節約ã—ãŸã„ã¨è€ƒãˆãŸï¼Žãã“ã§ï¼Œèµ¤ã„オブジェã¨ãã‚Œã«å¯¾å¿œã™ã‚‹é’ã„オブジェã®ä½ç½®ã‚’仮定ã—ã¦ï¼Œãã®ã¨ãã«å¼¾ã«ã“ã‚ã‚‹ã¹ãå¿…è¦ãªé”力ã®æœ€å°é‡ï¼Œã¤ã¾ã‚Šï¼Œé’ã„オブジェã«åˆ°é”ã—ã¦ã„る時点ã§å¼¾ã«æ®‹ã£ã¦ã„ã‚‹é”力ãŒ0 ã«ãªã‚‹é”力ã®é‡ã‚’求ã‚よã†ï¼Ž
入力ã¯ã™ã¹ã¦æ•´æ•°ã§ã‚る.ãã‚Œãžã‚Œã®æ•°ã¯1 ã¤ã®ç©ºç™½ã«ã‚ˆã‚ŠåŒºåˆ‡ã‚‰ã‚Œã‚‹ï¼Ž
N Q x1 y1 z1 r1 l1 : xN yN zN rN lN sx1 sy1 sz1 dx1 dy1 dz1 : sxQ syQ szQ dxQ dyQ dzQ
ãã‚Œãžã‚Œ1 組ã®èµ¤ã„オブジェã¨ãã‚Œã«å¯¾å¿œã™ã‚‹é’ã„オブジェã®ä½ç½®ã®ä»®å®šã«ãŠã„ã¦ï¼Œç©ºé–“ä¸ã«éšœå®³ç‰©ã¨èµ¤ã„オブジェã¨é’ã„オブジェ1 対ã¨ã®ã¿ãŒã‚ã‚‹ã‚‚ã®ã¨ã—ã¦ï¼Œå¼¾ã«ã“ã‚ã‚‹ã¹ãé”力ã®é‡ã‚’1 è¡Œã«å‡ºåŠ›ã›ã‚ˆï¼Žå¼¾ã¯èµ¤ã„オブジェã®ä½ç½®ã‹ã‚‰é’ã„オブジェã®ä½ç½®ã¾ã§ä¸€ç›´ç·šã«é£›ã¶ã‚‚ã®ã¨ã—,弾ã®å¤§ãã•ã¯éžå¸¸ã«å°ã•ã„ã®ã§ç‚¹ã¨ã—ã¦æ‰±ã†ï¼Ž
5 1 0 10 0 5 2 0 20 0 5 12 0 30 0 5 22 0 40 0 5 32 0 50 0 5 42 0 0 0 0 60 0
110
1 1 10 5 0 5 9 0 0 0 9 12 0
9
5 5 -38 -71 -293 75 1 -158 -38 -405 66 1 -236 -303 157 266 1 316 26 411 190 1 207 -312 -27 196 1 -50 292 -375 -401 389 -389 460 278 409 -329 -303 411 215 -220 -200 309 -474 300 261 -494 -87 -300 123 -463 386 378 486 -443 -64 299
0 2 1 3 0