m 個ã®ç›¸ç•°ãªã‚‹ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆ var_0, var_1, … , var_{m-1} ãŒã‚る. 0, 1, … , 9, var_0, var_1, … , var_{m-1} ã® 10+m 種類ã®æ–‡å—ã‹ã‚‰ãªã‚‹ï¼Œé•·ã• N ã®æ–‡å—列 s_0s_1s_2…s_{N-1} ãŒä¸Žãˆã‚‰ã‚Œã‚‹ï¼Ž ã“ã®æ–‡å—列ã«ãŠã‘ã‚‹å„アルファベットを数å—ã§ç½®ãæ›ãˆã¦å›žæ–‡ã«ãªã‚‹ã‚ˆã†ã«ã—ãŸã„.(回文ã¨ã¯ï¼Œå‰ã‹ã‚‰èªã‚“ã§ã‚‚後ã‚ã‹ã‚‰èªã‚“ã§ã‚‚åŒã˜æ–‡å—列をã‚らã‚ã™ï¼Ž) ã“ã“ã§ï¼ŒåŒã˜ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã¯åŒã˜æ•°å—ã§ç½®ãæ›ãˆãªã‘ã‚Œã°ãªã‚‰ãªã„.ã¾ãŸä¸Žãˆã‚‰ã‚ŒãŸã™ã¹ã¦ã®ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆvar_iã¯å°‘ãªãã¨ã‚‚,一度ã¯æ–‡å—列s_0s_1s_2…s_{N-1}ã«ã‚らã‚れる.
アルファベット var_i 㯠0 以上 u_i 以下ã®ï¼Œleading zero ã‚’å«ã¾ãªã„æ•´æ•°ã«ç½®ãæ›ãˆã‚‹äº‹ãŒã§ãる. ç½®ãæ›ãˆãŸå¾Œã®æ–‡å—列ãŒå›žæ–‡ã«ãªã‚‹ã‚ˆã†ãªç½®ãæ›ãˆæ–¹ãŒä½•é€šã‚Šå˜åœ¨ã™ã‚‹ã‹ã‚’,mod 10^9+7 ã§æ±‚ã‚よ. ãªãŠï¼Œã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆã®ç½®ãæ›ãˆæ–¹ãŒç•°ãªã‚Œã°ï¼Œå¾—られる文å—列ãŒåŒã˜ã§ã‚‚ç•°ãªã‚‹ã‚‚ã®ã¨ã—ã¦æ•°ãˆã‚‹ï¼Ž
入力ã¯ä»¥ä¸‹ã®å½¢å¼ã§ä¸Žãˆã‚‰ã‚Œã‚‹
N m s_0s_1s_2…s_{N-1} var_0 u_0 ... var_{m-1} u_{m-1}
ç½®ãæ›ãˆæ–¹ã®å ´åˆã®æ•°ã‚’ 10^9 + 7 ã§å‰²ã£ãŸå‰°ä½™ã‚’一行ã§å‡ºåŠ›ã›ã‚ˆï¼Ž
3 1 a1a a 99
19
5 3 jbfjb f 50 b 25 j 5
252
7 3 jag2013 j 53 a 10 g 93
23