1 ã‹ã‚‰ n ã¾ã§ã®ç•ªå·ãŒæ›¸ã‹ã‚ŒãŸ n æžšã®ã‚«ãƒ¼ãƒ‰ãŒã‚る.ã¾ãšï¼Œä¸€ç•ªä¸ŠãŒç•ªå· 1 ã®ã‚«ãƒ¼ãƒ‰ï¼Œä¸Šã‹ã‚‰2æžšç›®ãŒç•ªå· 2 ã®ã‚«ãƒ¼ãƒ‰ï¼Œâ€¦ï¼Œä¸€ç•ªä¸‹ãŒç•ªå· n ã®ã‚«ãƒ¼ãƒ‰ã¨ãªã‚‹ã‚ˆã†ã«é †ç•ªã«é‡ãã¦ï¼Œã‚«ãƒ¼ãƒ‰ã®å±±ã‚’作る.
カードã®å±±ã«å¯¾ã—ã¦ï¼Œã€Œã‚·ãƒ£ãƒƒãƒ•ãƒ«(x,y)ã€ã¨å‘¼ã°ã‚Œã‚‹æ¬¡ã®ã‚ˆã†ãªæ“作を行ã†ã“ã¨ã§ï¼Œã‚«ãƒ¼ãƒ‰ã‚’並ã³æ›¿ãˆã‚‹ï¼ˆx, y 㯠1 ≤ x < y < n ã‚’ã¿ãŸã™æ•´æ•°ï¼‰ï¼Ž
シャッフル(x,y)
n æžšã®ã‚«ãƒ¼ãƒ‰ã‚’,一番上ã‹ã‚‰ x æžšç›®ã¾ã§ã®ã‚«ãƒ¼ãƒ‰ã‹ã‚‰ãªã‚‹å±±A, x+1 æžšç›®ã‹ã‚‰ y æžšç›®ã®ã‚«ãƒ¼ãƒ‰ã‹ã‚‰ãªã‚‹å±±B, y+1 æžšç›®ã‹ã‚‰ n æžšç›®ã®ã‚«ãƒ¼ãƒ‰ã‹ã‚‰ãªã‚‹å±±C ã®3ã¤ã®å±±ã«åˆ†ã‘る.ãã—ã¦ï¼Œå±±Aã®ä¸Šã«å±±Bã‚’é‡ã,ã•ã‚‰ã«ãã®ä¸Šã«å±±Cã‚’é‡ãる.
例ãˆã°ï¼Œé †ç•ªã«ä¸¦ã‚“ã§ã„ã‚‹9æžšã®ã‚«ãƒ¼ãƒ‰ã«å¯¾ã—ã¦ã€Œã‚·ãƒ£ãƒƒãƒ•ãƒ«(3,5)ã€ã‚’è¡Œã†ã¨ï¼Œ 9 æžšã®ã‚«ãƒ¼ãƒ‰ã«æ›¸ã‹ã‚ŒãŸç•ªå·ã¯, 上ã‹ã‚‰é †ç•ªã« 6, 7, 8, 9, 4, 5, 1, 2, 3 ã¨ãªã‚‹ï¼Ž
最åˆã®å±±ã®çŠ¶æ…‹ã‹ã‚‰ m 回ã®ã‚·ãƒ£ãƒƒãƒ•ãƒ«ã€Œã‚·ãƒ£ãƒƒãƒ•ãƒ«(x1, y1)ã€ã€Œã‚·ãƒ£ãƒƒãƒ•ãƒ«(x2, y2)〠… 「シャッフル(xm, ym)ã€ã‚’é †ç•ªã«è¡Œã£ãŸå¾Œã®ã‚«ãƒ¼ãƒ‰ã®å±±ã«ãŠã„ã¦ï¼Œä¸Šã‹ã‚‰æ•°ãˆã¦ p æžšç›®ã‹ã‚‰ q æžšç›®ã®ã‚«ãƒ¼ãƒ‰ã®ä¸ã«ç•ªå·ãŒ r 以下ã®ã‚«ãƒ¼ãƒ‰ãŒä½•æžšå«ã¾ã‚Œã¦ã„ã‚‹ã‹ã‚’求ã‚るプãƒã‚°ãƒ©ãƒ を作æˆã›ã‚ˆï¼Ž
入力ã¯è¤‡æ•°ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆã‹ã‚‰ãªã‚‹ï¼Žå„データセットã¯ä»¥ä¸‹ã®å½¢å¼ã§ä¸Žãˆã‚‰ã‚Œã‚‹ï¼Ž
入力㯠m+3 è¡Œã‹ã‚‰ãªã‚‹ï¼Ž 1 行目ã«ã¯ã‚«ãƒ¼ãƒ‰ã®æžšæ•° n ãŒæ›¸ã‹ã‚Œã¦ã„る(3 ≤ n ≤ 1000000000 = 109). 2 行目ã«ã¯ã‚·ãƒ£ãƒƒãƒ•ãƒ«ã®å›žæ•°ã‚’表ã™æ•´æ•° m ãŒæ›¸ã‹ã‚Œã¦ã„る(1 ≤ m ≤ 5000). 3 行目ã«ã¯æ•´æ•° p, q, r ãŒæ›¸ã‹ã‚Œã¦ã„る(1 ≤ p ≤ q ≤ n, 1 ≤ r ≤ n). i + 3 行目(1 ≤ i ≤ m)ã«ã¯2ã¤ã®æ•´æ•° xi, yi (1 ≤ xi < yi < n) ãŒç©ºç™½ã‚’区切りã¨ã—ã¦æ›¸ã‹ã‚Œã¦ã„る.
n ㌠0 ã®ã¨ã入力ã®çµ‚了を示ã™. データセットã®æ•°ã¯ 5 を超ãˆãªã„.
データセットã”ã¨ã«, m 回ã®ã‚·ãƒ£ãƒƒãƒ•ãƒ«å¾Œã®ã‚«ãƒ¼ãƒ‰ã®å±±ã«ãŠã„ã¦ï¼Œä¸Šã‹ã‚‰æ•°ãˆã¦ p æžšç›®ã‹ã‚‰ q æžšç›®ã®ã‚«ãƒ¼ãƒ‰ã®ä¸ã«å«ã¾ã‚Œã¦ã„る番å·ãŒ r 以下ã®ã‚«ãƒ¼ãƒ‰ã®æžšæ•°ã‚’1行ã«å‡ºåŠ›ã›ã‚ˆï¼Ž
9 1 3 7 4 3 5 12 3 3 8 5 3 8 2 5 6 10 0
2 3
1ã¤ç›®ã®å…¥åŠ›ä¾‹ã®å±±ã«å¯¾ã—ã¦, 「シャッフル(3,5)ã€ã‚’è¡Œã†ã¨ï¼Œã‚«ãƒ¼ãƒ‰ã¯ä¸Šã‹ã‚‰é †ç•ªã« 6, 7, 8, 9, 4, 5, 1, 2, 3 ã¨ãªã‚‹ï¼Žä¸Šã‹ã‚‰æ•°ãˆã¦ 3 æžšç›®ã‹ã‚‰ 7 æžšç›®ã«å«ã¾ã‚Œã‚‹ç•ªå·ãŒ 4 以下ã®ã‚«ãƒ¼ãƒ‰ã¯ï¼Œç•ªå· 4 ã¨ç•ªå· 1 ã® 2 æžšã§ã‚る.
ã¾ãŸï¼Œ2ã¤ç›®ã®å…¥åŠ›ä¾‹ã®å±±ã«å¯¾ã—ã¦, 「シャッフル(3,8)ã€ã€Œã‚·ãƒ£ãƒƒãƒ•ãƒ«(2,5)ã€ã€Œã‚·ãƒ£ãƒƒãƒ•ãƒ«(6,10)ã€ã‚’é †ç•ªã«è¡Œã†ã¨ï¼Œã‚«ãƒ¼ãƒ‰ã¯ä¸Šã‹ã‚‰é †ç•ªã« 9, 10, 3, 11, 12, 4, 5, 6, 7, 8, 1, 2 ã¨ãªã‚‹ï¼Žä¸Šã‹ã‚‰æ•°ãˆã¦ 3 æžšç›®ã‹ã‚‰ 8 æžšç›®ã«å«ã¾ã‚Œã‚‹ç•ªå·ãŒ 5 以下ã®ã‚«ãƒ¼ãƒ‰ã¯ 3 æžšã§ã‚る.
上記å•é¡Œæ–‡ã¨è‡ªå‹•å¯©åˆ¤ã«ä½¿ã‚れるデータã¯ã€æƒ…å ±ã‚ªãƒªãƒ³ãƒ”ãƒƒã‚¯æ—¥æœ¬å§”å“¡ä¼šãŒä½œæˆã—公開ã—ã¦ã„ã‚‹å•é¡Œæ–‡ã¨æŽ¡ç‚¹ç”¨ãƒ†ã‚¹ãƒˆãƒ‡ãƒ¼ã‚¿ã§ã™ã€‚