ACM国ã«ã¯ä¸å¤®ã‚’æ±è¥¿ã«æµã‚Œã‚‹å·ãŒã‚る.ã“ã®å·ã¯è¥¿ã®éš£å›½ã‹ã‚‰ACM国を通りæ±ã®éš£å›½ã¸ã¨æµã‚Œã¦ãŠã‚Šï¼ŒACM国内ã®å…¨é•·ã¯ K kmã§ã‚る.ã“ã®å·ã«ã„ãã¤ã‹ã®é–˜é–€ã‚’è¨ç½®ã—,é‹æ²³ã¨ã—ã¦åˆ©ç”¨ã™ã‚‹ã“ã¨ãŒè¨ˆç”»ã•ã‚Œã¦ã„る.
閘門ã¨ã¯ï¼Œç•°ãªã‚‹2ã¤ã®æ°´ä½é–“を船ãŒç§»å‹•ã™ã‚‹ãŸã‚ã®ä»•çµ„ã¿ã§ã‚る.閘門ã¯ä¸Šæµå´ã¨ä¸‹æµå´ã«ãã‚Œãžã‚Œæ°´é–€ã‚’æŒã¡ï¼Œãれらã®é–“ã«é–˜å®¤ã¨å‘¼ã°ã‚Œã‚‹å°ã•ãªæ°´åŸŸã‚’æŒã¤ï¼Žã“ã®é–˜å®¤ã«èˆ¹ã‚’入れãŸå¾Œã«æ³¨æ°´ã‚ã‚‹ã„ã¯æŽ’æ°´ã‚’è¡Œã„,閘室ã®æ°´ä½ã‚’上下ã•ã›ã‚‹ã“ã¨ã§èˆ¹ã‚‚上下ã•ã›ã‚‹ï¼Žä»¥ä¸‹ã«ãã®æ¨¡å¼å›³ã‚’示ã™ï¼Ž
図 F-1: 閘門ã®æ¨¡å¼å›³
ã“ã®å·ã®å·å¹…ã¯ã‚ã¾ã‚Šåºƒããªã„ãŸã‚,西ã‹ã‚‰æ±ã¸ä¸€æ–¹é€šè¡Œã®é‹æ²³ã¨ãªã‚‹ã“ã¨ãŒæ±ºã¾ã£ã¦ã„る.è¨è¨ˆã®æ‹…当者ã¯ï¼Œé‹æ²³ã‚’効率良ãé‹ç”¨ã™ã‚‹ãŸã‚,予想ã•ã‚Œã‚‹èˆ¹ã®èˆªè¡Œã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã«åˆã‚ã›ã¦é–˜é–€ã®è¨ç½®å ´æ‰€ãªã©ã‚’最é©ã«ã—ãŸã„ã¨è€ƒãˆã¦ã„る.
ã‚ãªãŸã¯è¨è¨ˆæ‹…当者ã«é›‡ã‚ã‚Œã¦ã„るプãƒã‚°ãƒ©ãƒžãƒ¼ã§ã‚る.ã‚ãªãŸã®ä»•äº‹ã¯ï¼Œé–˜é–€ã®æƒ…å ±ã¨è¤‡æ•°ã®èˆ¹ã®èˆªè¡Œã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ãŒä¸Žãˆã‚‰ã‚ŒãŸã¨ã,全ã¦ã®èˆ¹ãŒå·ã‚’通éŽã™ã‚‹ã¾ã§ã®æ™‚間をシミュレーションã«ã‚ˆã‚Šæ±‚ã‚るプãƒã‚°ãƒ©ãƒ を書ãã“ã¨ã§ã‚る.
å„閘門ã¯ä»¥ä¸‹ã®æƒ…å ±ã«ã‚ˆã£ã¦è¡¨ã•ã‚Œã‚‹ï¼Ž
便宜上,シミュレーションã«ãŠã„ã¦ï¼Œå·ã¯ACM国外ã«ãŠã„ã¦ã‚‚åŒæ§˜ã«ç„¡é™ã«ç¶šã„ã¦ã„ã‚‹ã‚‚ã®ã¨ã™ã‚‹ï¼Ž
シミュレーションã®é–‹å§‹æ™‚点ã«ãŠã„ã¦ï¼Œå…¨ã¦ã®é–˜å®¤ã®æ°´ä½ã¯æ±å´ã¨è¥¿å´ã®æ°´ä½ã®ã†ã¡ï¼Œä½Žã„æ–¹ã«ã‚る.ã¾ãŸï¼Œèˆªè¡Œã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã«å«ã¾ã‚Œã‚‹èˆ¹ã¯ï¼ŒACM国ã®è¥¿ç«¯ã‚’å…ˆé 地点ã¨ã—ã¦ï¼Œå…¥åŠ›ã§ä¸Žãˆã‚‰ã‚Œã‚‹é †ã«æ±ã‹ã‚‰è¥¿ã«å‘ã‹ã£ã¦1kmãŠãã«ä¸¦ã‚“ã§ã„ã‚‹ã‚‚ã®ã¨ã™ã‚‹ï¼Ž 便宜上,先é ã®èˆ¹ã®åˆæœŸä½ç½®ã‚’0km地点ã¨ã™ã‚‹ï¼Ž
シミュレーション開始ã¨ã¨ã‚‚ã«èˆ¹ã¯æ±ã«å‘ã‹ã£ã¦èˆªè¡Œã‚’始ã‚る.ã“ã®ã¨ã,ã‚る船ã®å‰å¾Œ1km未満ã«ä»–ã®èˆ¹ãŒå…¥ã£ã¦ã¯ãªã‚‰ãªã„. å„船ã«ã¯ãã‚Œãžã‚Œæœ€å¤§èˆ¹é€Ÿ V (km/h)ãŒè¨å®šã•ã‚Œã¦ã„る.船ã¯ä¸€çž¬ã§ä»»æ„ã®èˆ¹é€Ÿã«é”ã—,ã•ã‚‰ã«ä¸€çž¬ã§é™æ¢ã™ã‚‹ã“ã¨ã™ã‚‰ã§ãる.基本的ã«èˆ¹ã¯æœ€å¤§èˆ¹é€Ÿã§èˆªè¡Œã™ã‚‹ãŒï¼Œå…ˆè¡Œã™ã‚‹èˆ¹ã‚ˆã‚Šå¾Œç¶šã®èˆ¹ã®ã»ã†ãŒæœ€å¤§èˆ¹é€ŸãŒé€Ÿã,ã‹ã¤å¾Œç¶šã®èˆ¹ãŒå…ˆè¡Œã™ã‚‹èˆ¹ã®1km手å‰ã«è¿½ã„ã¤ã„ãŸå ´åˆã¯ï¼Œå¾Œç¶šã®èˆ¹ã¯å…ˆè¡Œã™ã‚‹èˆ¹ã¨åŒã˜èˆ¹é€Ÿã§èˆªè¡Œã™ã‚‹ï¼Žèˆ¹åŠã³é–˜é–€ã®å¤§ãã•ã¯ç„¡è¦–ã§ãã‚‹ã‚‚ã®ã¨ã™ã‚‹ï¼Ž
船ã¯ï¼Œé–˜é–€ã®è¥¿å´ã®æ°´ä½ã¨é–˜å®¤ã®æ°´ä½ãŒç‰ã—ã„ã¨ãã®ã¿ï¼Œãã®é–˜é–€ã«å…¥ã‚‹ã“ã¨ãŒã§ãる.åŒæ§˜ã«ï¼Œé–˜é–€ã®æ±å´ã®æ°´ä½ã¨é–˜å®¤ã®æ°´ä½ãŒç‰ã—ã„ã¨ãã®ã¿ï¼Œãã®é–˜é–€ã‹ã‚‰å‡ºã‚‹ã“ã¨ãŒã§ãる.å„閘室ã®æ°´ä½ã¯ï¼Œä¸ã«èˆ¹ãŒã„ãªã„å ´åˆã¯ï¼Œãã®é–˜é–€ã®è¥¿å´ã®æ°´ä½ã¨ä¸€è‡´ã™ã‚‹ã¾ã§ä¸Šæ˜‡ã¾ãŸã¯ä¸‹é™ã™ã‚‹ï¼Žã¾ãŸï¼Œèˆ¹ãŒã„ã‚‹å ´åˆã¯ï¼Œãã®é–˜é–€ã®æ±å´ã®æ°´ä½ã¨ä¸€è‡´ã™ã‚‹ã¾ã§å¤‰ä½ã™ã‚‹ï¼Žé–˜é–€ã®ä¸åº¦1kmå…ˆã§èˆ¹ãŒåœæ³Šã—ã¦ã„ã‚‹å ´åˆã§ã‚‚,船ã¯é–˜é–€ã‹ã‚‰å‡ºã‚‹ã“ã¨ãŒã§ãる.ãŸã ã—,ã“ã®ã¨ã,船ã¯å…ˆè¡Œã™ã‚‹èˆ¹ãŒç™ºé€²ã™ã‚‹ã¾ã§é–˜é–€ã‹ã‚‰å‡ºãŸã¨ã“ã‚ã§åœæ³Šã—ãªã‘ã‚Œã°ãªã‚‰ãªã„.
船ã¯ACM国ã®æ±ç«¯ã‚’通éŽã—ãŸå¾Œï¼Œå¯èƒ½ãªé™ã‚Šã®é€Ÿåº¦ã§ç„¡é™é ã¾ã§èˆªè¡Œã™ã‚‹ï¼Žå…¨ã¦ã®èˆ¹ãŒACM国ã®æ±ç«¯ã‚’通éŽã—終ãˆãŸæ™‚点ã§ã‚·ãƒŸãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯çµ‚了ã™ã‚‹ï¼Ž
入力ã¯è¤‡æ•°ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆã‹ã‚‰ãªã‚‹ï¼Žå„データセットã¯ä»¥ä¸‹ã®å½¢å¼ã§ä¸Žãˆã‚‰ã‚Œã‚‹ï¼Ž
N M K
X1 L1 F1 D1 UD1
X2 L2 F2 D2 UD2
...
XN LN FN DN UDN
V1
V2
...
VM
最åˆã®1è¡Œã¯3ã¤ã®æ•´æ•° N, M, K ã‹ã‚‰ãªã‚‹ï¼Ž N (1 ≤ N ≤ 100) ã¯é–˜é–€ã®æ•°ï¼Œ M (1 ≤ M ≤ 100) ã¯èˆ¹ã®æ•°ï¼Œ K (2 ≤ K ≤ 1000) ã¯å·ã®ACM国内ã«ãŠã‘る全長をãã‚Œãžã‚Œè¡¨ã™ï¼Ž
続ã N è¡Œã¯é–˜é–€ã®æƒ…å ±ã‚’è¡¨ã™ï¼Ž å„è¡Œã¯5ã¤ã®æ•´æ•° Xi, Li, Fi, Di, UDi ã‹ã‚‰ãªã‚‹ï¼Ž Xi (1 ≤ Xi ≤ K - 1) ã¯é–˜é–€ i ã®ACM国西端ã‹ã‚‰ã®ä½ç½®(km), Li (1 ≤ Li ≤ 1000) ã¯é–˜é–€ i ã®æ°´ä½ã®åˆ‡ã‚Šæ›¿ãˆã«å¿…è¦ãªæ°´ã®å®¹ç©(L), Fi (1 ≤ Fi ≤ 1000) ã¯é–˜é–€ i ã®å˜ä½æ™‚é–“ã‚ãŸã‚Šã®æœ€å¤§æ³¨æ°´é‡(L/h), Di (1 ≤ Di ≤ 1000) ã¯é–˜é–€ i ã®å˜ä½æ™‚é–“ã‚ãŸã‚Šã®æœ€å¤§æŽ’æ°´é‡(L/h), UDi (UDi ∈ {0, 1})ã¯é–˜é–€ i ã®è¥¿å´ã®æ°´ä½ã¨æ±å´ã®æ°´ä½ã®ä¸Šä¸‹é–¢ä¿‚ã‚’ãã‚Œãžã‚Œè¡¨ã™ï¼Ž UDi ㌠0 ã®å ´åˆï¼Œé–˜é–€ i ã¯è¥¿å´ã‚ˆã‚Šæ±å´ãŒæ°´ä½ãŒé«˜ã„ã“ã¨ã‚’表ã™ï¼Žä¸€æ–¹ UDi ㌠1 ã®å ´åˆï¼Œé–˜é–€ i ã¯è¥¿å´ã‚ˆã‚Šæ±å´ãŒæ°´ä½ãŒä½Žã„ã“ã¨ã‚’表ã™ï¼Ž
続ã M è¡Œã«ã¯ï¼Œå„行㫠i 番目ã®èˆ¹ã®æœ€å¤§èˆ¹é€Ÿ(km/h)を表ã™æ•´æ•° Vi (1 ≤ Vi ≤ 1000) ãŒä¸Žãˆã‚‰ã‚Œã‚‹ï¼Ž
閘門㯠Xi ã®å€¤ã®å°ã•ã„é †ã§ä¸Žãˆã‚‰ã‚Œã‚‹ï¼Žã¾ãŸï¼ŒåŒä¸€ã®ä½ç½®ã«è¤‡æ•°ã®é–˜é–€ãŒè¨ç½®ã•ã‚Œã‚‹ã“ã¨ã¯ãªã„.
入力ã®çµ‚ã‚Šã¯ã‚¹ãƒšãƒ¼ã‚¹ã§åŒºåˆ‡ã‚‰ã‚ŒãŸ3個ã®ã‚¼ãƒã‹ã‚‰ãªã‚‹ï¼Ž
å„データセットã«å¯¾ã—,シミュレーション開始ã‹ã‚‰çµ‚了ã¾ã§ã®æ™‚刻を1è¡Œã§å‡ºåŠ›ã›ã‚ˆï¼Žå‡ºåŠ›ã™ã‚‹å€¤ã¯10-6以下ã®èª¤å·®ã‚’å«ã‚“ã§ã„ã¦ã‚‚構ã‚ãªã„.値ã¯å°æ•°ç‚¹ä»¥ä¸‹ä½•æ¡è¡¨ç¤ºã—ã¦ã‚‚構ã‚ãªã„.
1 1 100 50 200 20 40 0 1 2 4 100 7 4 1 4 1 19 5 1 4 0 5 3 7 9 1 2 3 1 1 1 1 0 1 3 1 2 10 5 10 1 1 1 2 3 0 0 0
110 46.6666666667 5 41.6666666667