太郎å›ã¯ã€æ¬¡éƒŽå›ã«å¤æ–‡ã®ãƒŽãƒ¼ãƒˆã‚’借りãŸã€‚ 明日ã®å¤æ–‡ã®å®¿é¡Œã‚’写ã•ã›ã¦ã‚‚らã†ãŸã‚ã 。 太郎å›ã¯ã€ç”¨å¿ƒæ·±ã„æ€§æ ¼ã‚’ã—ã¦ã„ã‚‹ãŸã‚ã€ä¸‡ãŒä¸€ã®ã“ã¨ã‚’考ãˆã¦ã€è¿‘所ã®ã‚³ãƒ³ãƒ“ニã§æ¬¡éƒŽå›ã®ãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーをå–ã£ã¦è‡ªå®…ã¸å¸°ã£ãŸã€‚
太郎å›ã¯ã€è‡ªå®…ã§å®¿é¡Œã‚’始ã‚よã†ã¨ã—ãŸã¨ãã«ã€æ…Œã¦ãŸã€‚ 次郎å›ã‹ã‚‰å€Ÿã‚ŠãŸãƒŽãƒ¼ãƒˆãŒéž„ã«å…¥ã£ã¦ã„ãªã‹ã£ãŸã‹ã‚‰ã 。 ã©ã†ã‚„らã€ã‚³ãƒ³ãƒ“ニã«å¿˜ã‚Œã¦ãã¦ã—ã¾ã£ãŸã‚ˆã†ã 。
太郎å›ã¯ã€æ€¥ã„ã§ã‚³ãƒ³ãƒ“ニã«å¼•ãè¿”ã—ãŸã€‚ コピー機ã¨ãã®å‘¨è¾ºã‚’懸命ã«æœç´¢ã—ãŸãŒã€ãƒŽãƒ¼ãƒˆã‚’見ã¤ã‘ã‚‹ã“ã¨ã¯ã§ããªã‹ã£ãŸã€‚
å›°ã‚Šæžœã¦ãŸå¤ªéƒŽå›ã¯ã€ã‚³ãƒ³ãƒ“ニã®åº—é•·ã«åŠ©ã‘を求ã‚ãŸã€‚ 余談ã ãŒã€åº—é•·ã¯åœ°çƒç’°å¢ƒã«å„ªã—ã„人ã§ã€ç™½ãƒ¤ã‚®ã•ã‚“を飼ã£ã¦ã„る。 店長ã¯ã€åœ°çƒç’°å¢ƒã«æ°—ã‚’é…る心é£ã„ã‚’æŒã£ã¦ã„ã‚‹ãŸã‚ã€å¸¸æ—¥é ƒã‹ã‚‰ã€ãƒšãƒƒãƒˆã®ç™½ãƒ¤ã‚®ã•ã‚“ã«ã€é¤Œã¨ã—ã¦ã‚³ãƒ”ー機周辺ã®å®¢ã®å¿˜ã‚Œã‚‚ã®ã‚’与ãˆã¦ã„る。 店長ã«ã‚ˆã‚‹ã¨ã€ãƒŽãƒ¼ãƒˆã¯ã€ä»Šæ™©ã®ç™½ãƒ¤ã‚®ã•ã‚“ã®æ™©å¾¡é£¯ã§ã‚ã‚Šã€ç™½ãƒ¤ã‚®ã•ã‚“ã¯ç¾åœ¨é£Ÿäº‹ä¸ã ãã†ã§ã‚る。 太郎å›ã¯ç™½ãƒ¤ã‚®ã•ã‚“ã«é ¼ã¿ã“ã¿ã€é£Ÿã¹ã‹ã‘ã®ãƒŽãƒ¼ãƒˆã‚’å–ã‚Šè¿”ã™ã“ã¨ã¯ã§ããŸãŒã€ãƒŽãƒ¼ãƒˆã¯ãƒ“リビリã«ç ´ã‚Œã¼ã‚ã¼ã‚ã§ã‚る。
太郎å›ã¯ã€æ€¥ã„ã§è‡ªå®…ã«å¼•ãè¿”ã—ãŸã€‚ 自室ã®æœºã¨ãã®å‘¨è¾ºã‚’懸命ã«æœç´¢ã—ãŸãŒã€ãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーを見ã¤ã‘ã‚‹ã“ã¨ã¯ã§ããªã‹ã£ãŸã€‚
å›°ã‚Šæžœã¦ãŸå¤ªéƒŽå›ã¯ã€ãŠæ¯ã•ã‚“ã«åŠ©ã‘を求ã‚ãŸã€‚ 余談ã ãŒã€å¤ªéƒŽå›ã®ãŠæ¯ã•ã‚“ã¯åœ°çƒç’°å¢ƒã«å„ªã—ã„人ã§ã€é»’ヤギã•ã‚“を飼ã£ã¦ã„る。 太郎å›ã®ãŠæ¯ã•ã‚“ã¯ã€åœ°çƒç’°å¢ƒã«æ°—ã‚’é…る心é£ã„ã‚’æŒã£ã¦ã„ã‚‹ãŸã‚ã€å¸¸æ—¥é ƒã‹ã‚‰ã€ãƒšãƒƒãƒˆã®é»’ヤギã•ã‚“ã«ã€é¤Œã¨ã—ã¦å¤ªéƒŽå›ã®å®¿é¡Œã‚’与ãˆã¦ã„る。 ãŠæ¯ã•ã‚“ã«ã‚ˆã‚‹ã¨ã€ãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã¯ã€ä»Šæ™©ã®é»’ヤギã•ã‚“ã®æ™©å¾¡é£¯ã§ã‚ã‚Šã€é»’ヤギã•ã‚“ã¯ç¾åœ¨é£Ÿäº‹ä¸ã ãã†ã§ã‚る。 太郎å›ã¯é»’ヤギã•ã‚“ã«é ¼ã¿ã“ã¿ã€é£Ÿã¹ã‹ã‘ã®ãƒŽãƒ¼ãƒˆã‚’å–ã‚Šè¿”ã™ã“ã¨ã¯ã§ããŸãŒã€ãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã¯ãƒ“リビリã«ç ´ã‚Œã¼ã‚ã¼ã‚ã§ã‚る。
次郎å›ã®ãƒŽãƒ¼ãƒˆã¨ãã®ã‚³ãƒ”ーをビリビリã®ã¼ã‚ã¼ã‚ã«ã•ã‚Œã¦ã—ã¾ã£ãŸå¤ªéƒŽå›ã¯ã€ãƒŽãƒ¼ãƒˆã‚’å¯èƒ½ãªé™ã‚Šå¾©å…ƒã—よã†ã¨è€ƒãˆãŸã€‚ ãã“ã§ã€ç¹‹ãŒã‚Šãã†ãªãƒŽãƒ¼ãƒˆã®åˆ‡ã‚Œç«¯åŒå£«ã‚’繋ãŽåˆã‚ã›ã¦ã€ã€Œç¹‹ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã€ã‚’作æˆã—ãŸã€‚ åŒæ§˜ã«ã€ç¹‹ãŒã‚Šãã†ãªãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã®åˆ‡ã‚Œç«¯åŒå£«ã‚’繋ãåˆã‚ã›ã¦ã€ã€Œç¹‹ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã€ã‚’作æˆã—ãŸã€‚
太郎å›ã¯ã€ã‚らゆるå¯èƒ½æ€§ã‚’考ãˆã‚‹ãŸã‚ã«ã€ç¹‹ãŒã‚Šãã†ãªåˆ‡ã‚Œç«¯åŒå£«ã‚’ã¤ãªãŽåˆã‚ã›ãŸã€‚ ã“ã®ãŸã‚ã€1ã¤ã®åˆ‡ã‚Œç›®ã«2ã¤ä»¥ä¸Šã®åˆ‡ã‚Œç«¯ãŒç¹‹ãŒã‚Œã¦ã—ã¾ã£ãŸç®‡æ‰€ã‚‚ã‚ã£ãŸã€‚
繋ãŽåˆã‚ã›æ–¹ã®ä¾‹ã‚’図1ã«ç¤ºã™ã€‚ 図1ã¯ã€7ã¤ã®åˆ‡ã‚Œç«¯ã¨6ã¤ã®åˆ‡ã‚Œç›®ã‹ã‚‰ãªã‚‹ã€‚
|
|
切れ端"haru"ã¨"natsu"ã«ç¶šã切れ目ã«ã¯ã€åˆ‡ã‚Œç«¯"wa"ãŒç¹‹ãŒã‚Šã€æ–‡ç« ãŒåˆæµã—ã¦ã„る。 切れ端"wa"ã«ç¶šã切れ目ã«ã¯ã€åˆ‡ã‚Œç«¯"ake"ã¨"saron"ãŒç¹‹ãŒã‚Šã€æ–‡ç« ãŒåˆ†å²ã—ã¦ã„る。 ã“ã®ã‚ˆã†ãªåˆæµã‚„切れ端ãŒã‚ã‚‹ãŸã‚ã€å›³1ã¯æ¬¡ã®ã‚ˆã†ãª4ã¤ã®æ–‡ç« を表ã™ã€‚
太郎å›ã®ä»£ã‚ã‚Šã«ã€ã€Œç¹‹ãŽåˆã‚ã›ãŸãƒŽãƒ¼ãƒˆã€ã¨ã€Œç¹‹ãŽåˆã‚ã›ãŸãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã€ã®2ã¤ã‚’入力ã¨ã—ã¦å—ã‘å–ã£ã¦ã€ä¸¡æ–¹ã«å…±é€šã—ã¦ç¾ã‚Œã‚‹æ–‡ç« ã®æ•°ã‚’求ã‚るプãƒã‚°ãƒ©ãƒ を作æˆã›ã‚ˆã€‚
入力ã®1行目ã§ã¯ã€ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆã®æ•°T(1 ≤ T ≤ 100)ãŒä¸Žãˆã‚‰ã‚Œã‚‹ã€‚
データセットã¯ã€ã€Œç¹‹ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã€ã®æƒ…å ±ã¨ã€ã€Œç¹‹ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã€ã®æƒ…å ±ã‹ã‚‰æˆã‚‹ã€‚
「繋ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã€ã®æƒ…å ±ã¨ã—ã¦ã€ 1行目ã«n(2 ≤ n ≤ 500)ã¨m(1 ≤ m ≤ 600)ãŒä¸Žãˆã‚‰ã‚Œã‚‹ã€‚ nã¯ã€åˆ‡ã‚Œç«¯ã¨åˆ‡ã‚Œç«¯ã‚’繋ãŽåˆã›ã‚‹åˆ‡ã‚Œç›®ã®æ•°ã§ã‚る。 続ãmè¡Œã§ç¹‹ãŽåˆã›æ–¹ãŒä¸Žãˆã‚‰ã‚Œã‚‹ã€‚ å„è¡Œã¯ã€åˆ‡ã‚Œç«¯ã®ä¸Šç«¯ã«ç¹‹ãŒã‚‹åˆ‡ã‚Œç›®ã®ç•ªå·aã€åˆ‡ã‚Œç«¯ã®ä¸‹ç«¯ã«ã¤ãªãŒã‚‹åˆ‡ã‚Œç›®ã®ç•ªå·bã€åˆ‡ã‚Œç«¯ã‚’表ã™æ–‡å—列sã‹ã‚‰ãªã‚‹ã€‚ ãŸã ã—ã€0 ≤ a < b < nãŒæº€ãŸã•ã‚Œã‚‹ã€‚ sã¯é•·ã•ãŒ1以上5以下ã®æ–‡å—列ã§ã€ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã®å°æ–‡å—ã®ã¿ã‹ã‚‰æˆã‚‹ã€‚
「繋ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã®ã‚³ãƒ”ーã€ã‚‚「繋ãŽåˆã›ãŸãƒŽãƒ¼ãƒˆã€ã¨åŒã˜å½¢å¼ã§ä¸Žãˆã‚‰ã‚Œã‚‹ã€‚
ãªãŠã€0番目ã®åˆ‡ã‚Œç›®ã‹ã‚‰ç¹‹ãŽåˆã›æƒ…å ±ã‚’è¾¿ã‚Šã€n-1番目ã®åˆ‡ã‚Œç›®ã«åˆ°é”ã™ã‚‹éŽç¨‹ã§å¾—られる文å—列を連çµã—ãŸã‚‚ã®ã®ã¿ã‚’æ–‡ç« ã¨å‘¼ã¶ã‚‚ã®ã¨ã™ã‚‹ã€‚ ã¾ãŸã€ãã‚Œãžã‚Œã®ç¹‹ãŽåˆã›ã®ä¸ã§åŒã˜æ–‡ç« ãŒ2ã¤ä»¥ä¸Šå‡ºç¾ã™ã‚‹ã“ã¨ã¯ãªã„。
ãã‚Œãžã‚Œã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆæ¯Žã«ã€ç”ãˆã®æ•´æ•°ã‚’1,000,000,007ã§å‰²ã£ãŸä½™ã‚Šã‚’1è¡Œã§å‡ºåŠ›ã›ã‚ˆã€‚
4 2 1 0 1 a 2 2 0 1 a 0 1 b 5 5 0 1 a 0 2 b 1 3 a 2 3 c 3 4 e 3 3 0 1 aa 0 2 bce 1 2 a 2 4 0 1 abc 0 1 def 0 1 ghi 0 1 jkl 2 4 0 1 ghi 0 1 jkl 0 1 mno 0 1 pqr 6 7 0 1 haru 0 1 natsu 1 2 wa 2 3 ake 2 4 saron 3 5 bono 4 5 pusu 5 4 0 1 haruw 1 2 aakeb 2 3 o 3 4 no
1 1 2 1