ã‚ãªãŸã¯å‡„è…•ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãƒžãƒãƒ¼ã‚¸ãƒ£ã§ã‚る. 今回ã¯è¶…大è¦æ¨¡ãªãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã®ãƒžãƒã‚¸ãƒ¡ãƒ³ãƒˆã‚’è«‹ã‘è² ã£ãŸï¼Ž
図1: ã‚¢ãƒãƒ¼ãƒ€ã‚¤ã‚¢ã‚°ãƒ©ãƒ
ã“ã‚Œã¾ã§ã®å‹˜ã¨çµŒé¨“ã‹ã‚‰ãªã‚“ã¨ã‹ 図1 ã®ã‚ˆã†ãªã‚¢ãƒãƒ¼ãƒ€ã‚¤ã‚¢ã‚°ãƒ©ãƒ を作æˆã—ãŸï¼Ž å„ノードã¯ä½œæ¥ã®çµåˆç‚¹ã‚’表ã—ã¦ã„る. ã¾ãŸï¼ŒSã¯ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã®é–‹å§‹çŠ¶æ…‹ï¼ŒTã¯ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã®çµ‚了状態を表ã™çµåˆç‚¹ã§ã‚る. 例ãˆã°çµåˆç‚¹P3ã«ãŠã„ã¦ï¼Œä½œæ¥Gã¯ä½œæ¥Cã¨ä½œæ¥EãŒçµ‚了ã—ãªã‘ã‚Œã°é–‹å§‹ã§ããªã„. プãƒã‚¸ã‚§ã‚¯ãƒˆã®è¨ˆç”»ã¯å®Œç’§ã§ã‚り,全ã¦ã®çµåˆç‚¹ã¯ï¼Œãã“ã‹ã‚‰å‡ºã¦å†ã³ãã®çµåˆç‚¹ã«æˆ»ã‚‹ä½œæ¥çµŒè·¯ã‚’æŒãŸãªã„. ã¾ãŸï¼Œå…¨ã¦ã®ä½œæ¥ã¯å‰å¾Œã«çµåˆç‚¹ã‚’æŒã£ã¦ãŠã‚Šï¼Œ 開始状態ã¨çµ‚了状態以外ã®çµåˆç‚¹ã¯å¿…ãšå‰å¾Œã«ä½œæ¥ã‚’æŒã£ã¦ã„る.
ã—ã‹ã—,今回ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¯ä½œæ¥æ•°ãŒå¤šã„.
ã‚¢ãƒãƒ¼ãƒ€ã‚¤ã‚¢ã‚°ãƒ©ãƒ ã«ãŠã„ã¦ï¼Œæ‰€è¦æ™‚é–“ãŒæœ€é•·ã¨ãªã‚‹çµŒè·¯(クリティカルパス)上ã®ä½œæ¥ã¯ï¼Œ プãƒã‚¸ã‚§ã‚¯ãƒˆã®æ™‚間制約ã«å¤§ãã影響ã™ã‚‹ï¼Ž ãã“ã§ã‚ãªãŸã¯ã‚¢ãƒãƒ¼ãƒ€ã‚¤ã‚¢ã‚°ãƒ©ãƒ 上ã®ã‚¯ãƒªãƒ†ã‚£ã‚«ãƒ«ãƒ‘スã®æ‰€è¦æ—¥æ•°ã‚’計算ã™ã‚‹ãƒ—ãƒã‚°ãƒ©ãƒ を書ãã“ã¨ã«ã—ãŸï¼Ž ã¡ãªã¿ã«ï¼Œã“ã®ã‚¯ãƒªãƒ†ã‚£ã‚«ãƒªãƒ‘スã¯å¿…ãšã‚¢ãƒãƒ¼ãƒ€ã‚¤ã‚¢ã‚°ãƒ©ãƒ 上ã«å˜åœ¨ã™ã‚‹ï¼Ž
入力ã¯æ¬¡ã®å½¢å¼ã§è¡¨ã•ã‚Œã‚‹ï¼Ž
n ( 2 ≦ n ≦ 400 ) ã¯çµåˆç‚¹ã®æ•°ï¼Œ m ( 1 ≦ m ≦ 800 ) ã¯ä½œæ¥ã®æ•°ã‚’表ã™æ•´æ•°ã§ã‚る. ã“ã®ã¨ã,çµåˆç‚¹ 0 ãŒé–‹å§‹çŠ¶æ…‹ã®çµåˆç‚¹ã‚’表ã—,çµåˆç‚¹ n - 1 ãŒçµ‚了状態ã®çµåˆç‚¹ã‚’表ã—ã¦ã„る. ai, bi, ci ã¯1ã¤ã®ç©ºç™½ã§åŒºåˆ‡ã‚‰ã‚ŒãŸæ•´æ•°ã§ã‚り, çµåˆç‚¹ ai ( 0 ≦ ai ≦ n - 2 ) ã‹ã‚‰ bi ( 1 ≦ bi ≦ n - 1 ) ã¾ã§ã®ä½œæ¥ã« ci ( 1 ≦ ci ≦ 100 ) 日必è¦ãªã“ã¨ã‚’表ã—ã¦ã„る. ai 㨠bi ã¯å¸¸ã«ç•°ãªã£ã¦ã„る. ã¾ãŸï¼ŒåŒã˜ ai, bi ã®çµ„ã¿ã¯2度以上ç¾ã‚Œãªã„ã¨è€ƒãˆã¦è‰¯ã„.
クリティカルパスã®æ‰€è¦æ—¥æ•°ã‚’表ã™æ•´æ•°ã‚’1行出力ã›ã‚ˆï¼Ž 出力ã«ã¯ã“れら以外ã®æ–‡å—ãŒã‚ã£ã¦ã¯ãªã‚‰ãªã„.
7 9 0 1 10 0 2 3 1 3 4 1 4 7 2 3 7 2 5 9 3 4 2 4 6 1 5 6 7
19