ICPCã®å›½å†…予é¸ã«å‚™ãˆã¦å•é¡Œã‚’解ã„ã¦ã„ãŸåƒ•ã¯, ãã®æ—¥3ã¤ç›®ã®Acceptã‚’è²°ã£ãŸã¨ã“ã‚ã§ã‚ーボードをå©ã手をæ¢ã‚ãŸ. 時計を見れã°, ã‚‚ã†æ—¥ä»˜ãŒå¤‰ã‚ã‚ã†ã‹ã¨ã„ã†æ™‚刻ã . 紅茶ã¨ãŠè“åã§ä¸€æœã—ã¦, 今日ã¯ã‚‚ã†å¯ã‚‹ã“ã¨ã«ã—よã†. ãã†æ€ã£ã¦åƒ•ã¯ã‚ッãƒãƒ³ã¸ã¨å‘ã‹ã£ãŸ.
ダージリンã®ã‹ãã‚ã—ã„香りãŒã‚ッãƒãƒ³ã‚’満ãŸã—ãŸé ƒ, 妹ãŒã‚„ã£ã¦ããŸ. å—験生ã§ã‚る彼女ã¯ä»Šæ—¥ã‚‚ã“ã‚“ãªæ™‚é–“ã¾ã§çœŸé¢ç›®ã«å‹‰å¼·ã—ã¦ã„ãŸã‚ˆã†ã . 僕ã¯å½¼å¥³ã‚’誘ã£ã¦, å°ã•ãªæ·±å¤œã®ãŠèŒ¶ä¼šã‚’é–‹ãã“ã¨ã«ã—ãŸ.
都åˆã®è‰¯ã„ã“ã¨ã«, ã‚ッãƒãƒ³ã«ã¯4ã¤ã®ãŠè“åãŒã‚ã£ãŸ. ã“れをãŸã 2人ã§åˆ†ã‘ã‚‹ã®ã‚‚ã¤ã¾ã‚‰ãªã„ã®ã§, 僕ã¯ã“ã®ãŠè“åã‚’è³ã‘ã¦ç°¡å˜ãªã‚²ãƒ¼ãƒ ã‚’ã—ãªã„ã‹ã¨æ案ã—ãŸ. ãã®ã‚²ãƒ¼ãƒ ã®å†…容を説明ã—よã†.
ã¾ãšæœ€åˆã«, 僕ã¯ã©ã®ãƒŽãƒ¼ãƒ‰ã‚‚0個ã¾ãŸã¯2個ã®åã‚’æŒã¤ã‚ˆã†ãªäºŒåˆ†æœ¨ã‚’書ã. 次ã«, ãã®æœ¨ã®è‘‰ã«å½“ãŸã‚‹(ã¤ã¾ã‚Š, åã‚’æŒãŸãªã„)ノードã«, ãã‚Œãžã‚Œ S = {a, b, c, d} ã®ä»»æ„ã®éƒ¨åˆ†é›†åˆã‚’書ã込む. 4ã¤ã®ãŠè“åã¯, ãã‚Œãžã‚Œ a, b, c, d ã«å¯¾å¿œã™ã‚‹.
最後ã«å¦¹ã¯, 木ã®å†…部接点(ã¤ã¾ã‚Šã€2ã¤ã®åã‚’æŒã¤)ノード㫠'A', 'O', 'X' ã®ã„ãšã‚Œã‹ã®æ–‡å—を書ã込む.
妹ã¯, 木ã®æ ¹ã«ã‚ãŸã‚‹ãƒŽãƒ¼ãƒ‰ãŒç¤ºã™ãŠè“åã‚’å¾—ã‚‹. ãŸã ã—, ノードãŒç¤ºã™ãŠè“åã¨ã¯,
ã®ã“ã¨ã§ã‚ã‚‹. ã“ã“ã§ã€sl ã¯ãã®ãƒŽãƒ¼ãƒ‰ã®å·¦ã®åノードãŒç¤ºã™ãŠè“å, sr ã¯ãã®ãƒŽãƒ¼ãƒ‰ã®å³ã®åノードãŒç¤ºã™ãŠè“åを指ã™. 2ã¤ã®é›†åˆã®å¯¾ç§°å·®ã¯, ã©ã¡ã‚‰ã‹ä¸€æ–¹ã®é›†åˆã«ã®ã¿å«ã¾ã‚Œã‚‹ã‚ˆã†ãªå…ƒã‹ã‚‰æˆã‚‹é›†åˆã§ã‚ã‚‹.
ã“ã®ã‚²ãƒ¼ãƒ ã«å¦¹ã¯ä¹—ã£ã¦ããŸ. ãã‚Œã©ã“ã‚ã‹, ãŠè“åã‚’4ã¤ã¨ã‚‚å·»ã上ã’ã¦ã‚„ã‚ã†ã¨ç›®ã‚’è¼ã‹ã›ã¦ã„ã‚‹. 出æ¥ã‚Œã°åƒ•ã®åˆ†ã‚‚残ã—ã¦ãŠã„ã¦ãれるã¨å¬‰ã—ã„ã®ã ã‘ã‚Œã©ã‚‚.
僕ãŒæ›¸ã„ãŸæœ¨ã«å¯¾ã—ã¦, 妹ãŒå…¨ã¦ã®ãŠè“åを得られるよã†ãªå†…部接点ã®æ›¸ãè¾¼ã¿æ–¹ã¯, ã„ã£ãŸã„何通りã‚ã‚‹ã ã‚ã†ã‹ï¼Ÿ
入力ファイルã¯ã€è¤‡æ•°ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆã‚’å«ã‚€.
データセットã®æœ€åˆã®è¡Œã«ã¯, 木ã®æƒ…å ±ãŒä¸Žãˆã‚‰ã‚Œã‚‹. 木ã®è¨˜è¿°ã¯,
"(" <左部分木ã®è¨˜è¿°> <一ã¤ã®ã‚¹ãƒšãƒ¼ã‚¹> <å³éƒ¨åˆ†æœ¨ã®è¨˜è¿°> ")"
ã¾ãŸã¯,
<一ã¤ã®æ•°å—>
ã®ã©ã¡ã‚‰ã‹ã®å½¢å¼ã‚’å–ã‚‹. å‰è€…ãŒå†…部接点ã®è¨˜è¿°, 後者ãŒè‘‰ã®è¨˜è¿°ã§ã‚ã‚‹.
次ã®è¡Œã¯1ã¤ã®æ•´æ•° N (N < 10) ã‚’å«ã¿, 続ã N è¡Œã«è‘‰ã«æ›¸ãè¾¼ã¾ã‚ŒãŸéƒ¨åˆ†é›†åˆã®æƒ…å ±ãŒä¸Žãˆã‚‰ã‚Œã‚‹.
部分集åˆã®æƒ…å ±ã¯, 空白文å—ã§åŒºåˆ‡ã‚‰ã‚ŒãŸ4ã¤ã®æ•°å—ã§è¡¨ã•ã‚Œã‚‹. 4ã¤ã®æ–‡å—ã¯ãã‚Œãžã‚Œ, ãã®éƒ¨åˆ†é›†åˆãŒ a, b, c, d ã‚’å«ã‚€ã‹ã©ã†ã‹ã‚’表ã™. å«ã‚€ãªã‚‰ã° 1 ãŒã€å«ã¾ãªã„ãªã‚‰ã° 0 ãŒä¸Žãˆã‚‰ã‚Œã‚‹.
葉ã®è¨˜è¿°ã¨ã—ã¦ä¸Žãˆã‚‰ã‚ŒãŸæ•°å—㌠n ã§ã‚ã‚‹ã¨ãã€ãã®è‘‰ã«æ›¸ãè¾¼ã¾ã‚ŒãŸéƒ¨åˆ†é›†åˆã¯ã“れら N 個ã®ã†ã¡ n 番目ã®ã‚‚ã®ã§ã‚ã‚‹. 1 ≤ n ≤ N ã¨ä»®å®šã—ã¦ã‚ˆã„.
与ãˆã‚‰ã‚Œã‚‹æœ¨ã¯ã€æœ€å¤§ 8 個ã®å†…部接点をå«ã‚€.
木ã®è¨˜è¿°ã®ä»£ã‚ã‚Šã«ä¸Žãˆã‚‰ã‚Œã‚‹ "END" ã¨ã„ã†æ–‡å—列ãŒ, 入力ã®çµ‚ã‚りを表ã™.
å„データセットã«ã¤ã„ã¦, 妹ãŒå…¨ã¦ã®ãŠè“åを得られるよã†ãªå†…部接点ã®æ›¸ãè¾¼ã¿æ–¹ã®æ•°ã‚’ã€ä¸€è¡Œã«å‡ºåŠ›ã›ã‚ˆ.
(1 2) 2 0 1 0 1 1 0 1 0 ((1 2) 3) 3 1 1 0 0 1 0 1 0 0 0 0 1 END
2 2