背景
____ / \ / ― ‐ 時刻は 20:30 / ( ●) ) | (__ノ、_) 真っ白の空間と、虚空に浮かぶディスプレイ―― \ `_⌒ /⌒ヽ ー‐ ィヽ_ / 、 、 〆ヾ ̄ `i / / ゙ lヾ_ ,|ヽ─ヘ / /l `、´/ ヽ / / ヽ ,____ ` ,ヽ ヽ -─ヽ イ_ ヽ /  ̄ ̄ ̄ ̄`ヽ Y ゝ‐-、 ( _i _i_ト、__) ヽ、___⊥____ノ 「___ノ ____ / \ / ─ ─ \ / (●) (●) \ ……ここはどこだお? | (__人__) | \ `⌒´ ,/ / ー‐ \ /⌒ヽ ー‐ ィヽ_ / 、 、 〆ヾ ̄ `i / / ゙ lヾ_ ,|ヽ─ヘ / /l `、´/ ヽ / / ヽ ,____ ` ,ヽ ヽ -─ヽ イ_ ヽ /  ̄ ̄ ̄ ̄`ヽ Y ゝ‐-、 ( _i _i_ト、__) ヽ、___⊥____ノ 「___ノ ___ ,,.-''"´ ` .、 / ヽ ./ ', l l / l 起きたか 〈`ヽ、 | |ミ=-  ̄ ̄`ヽ / l ミ=-‐ .′ l/ ヽ ,' ( __ 人 ) { / // )ニ=''´ ./ .| ツ二二二/ ./__ ./ | やらない夫!? / / /''"__,ノ ′ .| 何が起きているんだお / / / /,.-''")_ _,,-''´ / ヽ__ ,' /'´,,..-''´| / _ \/`ヽ、 _ ´l / ./ | ´ / / \ ,,..-''" | .l ./ / イ / / \ / ̄ ̄\ / ヽ、_ .:::\ 何って、 AtCoder だろ (●)(● ) .:::::::| (__人__) ::::::| デスゲームが始まったんだよ (`⌒ ´ ::::| { ..::::| 3 回瓦を割ったら爆発するぜ { ...:::ノ ヽ ......::::ノ _j:::::, イ>x、_ /i!イ__/////7>x ///i| ./////////l∧ ////i| ///////////l∧ /////i| /////////////l∧ ヽi////!.///////////////ハ |/////////////////////ム i/////////////i/ ∨/////ム /////////////// ,ノ///////〉 ///////////////ム////////,イ 雑な導入だお!? ////////////////j//////// //////////////////////l// 〉77|//////////////////////≧x、__, i///j///////////j>--<///////// ∨iLi////////////77777///////i/ `” |/////////j/////////////j/ / ̄ ̄\ /ヽ、_ \ 俺たちの言語は Haskell だ ( (● ) | (ノ、__) | |⌒´ | | -‐`‐'チ-..| / \ `'x::'´:::::::::::::::::::::::::7 / > __ヽ___::::::::::::〈. \/7,/ /::`ヽ::::::::::::::::::::::: ̄`:::::::`:..、 ,// / l:::::::::::ヽ:::::::::::::::::::::::::::l:::::::::::::`:.、 l ′ 7ァ |::::::::::::::ヽ::::::::::::::::::::::::!:::::::::::::::;イ l / `、::::::::::::∨::::::::::::::::::/:::::::::::::/::l. }‐...x' `、:::::::::::`、::::::::::/:::::::::::::/:::::〉/ニニソ `;:::::::::::::`,::::::::/::::::::::::/::::::::|/:::::::/ `;:::::::::::::`,:::/:::::::::/ l::::::::::::!:::::::/ 〉::::::::::::::Y:::::::::/. l:::::::::::l}::::/ ____ /ノ ヽ、_\ r ⌒j /( ○). (○)\ / / / (__人__) \/ / / ) 無理だお | u .` ⌒´ / / / / それだけはよしてくれお \ / '` ´ / r´ (⌒'ー―- イ′ ´廴 / > 、 ヽ _  ̄ ̄ ̄) / -、 } (  ̄¨´ / ヽ._ __ \ ` --‐'´ `゙' / ̄ ̄\ / ヽ、_ \ 贅沢を言うな (─)(─ ) | やつは Nibbles だぞ rm、.(__人__) | _,,........_ ||川n(,`⌒ ´ | _,(,,、,、,、,、,、)_ || !. { | , i ノ)ノイヽ),. ヽ. 〈 { / i 、ヽvイ゚ ヮ゚ノリノi ウワーイ | |, !. ヽ / 、 __(_,}i'立!{_)ノ | | |__ ヽ 〈 ,(ン::(__)ヾ) ゞゝ__ ̄''⌒ ヽ `^^i_ソ_ソ^´  ̄ ̄ トー、 } |: | ____ /ノ ヽ、_\ r ⌒j /( ○). (○)\ / / / (__人__) \/ / / ) 無理だお | u .` ⌒´ / / / / それだけはよしてあげて欲しいお \ / '` ´ / r´ (⌒'ー―- イ′ ´廴 / > 、 ヽ _  ̄ ̄ ̄) / -、 } (  ̄¨´ / ヽ._ __ \ ` --‐'´ `゙'
ABC 403
____ / \ / ─ ─ \ / (●) (●) \ ABC 403 に参加するお | (__人__) | \ `⌒´ ,/ / ー‐ \ ____ / \ / ─ ─\ / (●) (●) \ まずはレジってと…… | (__人__) | ___________ \ ` ⌒´ ,/ | | 20:56 | ___/ \ | | | | | / , | | | | | / ./ | | | | | | ⌒ ーnnn |_|___________|  ̄ \__、("二) ̄ ̄ ̄ ̄ ̄ ̄ _|_|__|_
____ / \ / ─ ─\ / (●) (●) \ ………… | (__人__) | ___________ \ ` ⌒´ ,/ | | 20:57 | ___/ \ | | | | | / , | | | | | / ./ | | | | | | ⌒ ーnnn |_|___________|  ̄ \__、("二) ̄ ̄ ̄ ̄ ̄ ̄ _|_|__|_ __ ____ //  ̄ \\ //--.-- -─\\ // (● ●) ((●(●) \ ガタガタガタガタガタガタ .| |.| ( . ((_人_人__) | _ _== = \\ ⌒ ` /,/ | | 20:58  ̄ ̄| || ノ \\| | | | || /´ | | | | | l | | ||| うるせえ ヽ -一ー_~、⌒)^),-、 | |_________| | ヽ ____,ノγ⌒ヽ)ニニ- ̄ | | | = = ____ / \ / ─ ─\ / (●) (●) \ そういえば、やる夫は Haskell が得意だったお | (__人__) | ___________ \ ` ⌒´ ,/ | | 20:59 | ___/ \ | | | | | / , | | | | | / ./ | | | | | | ⌒ ーnnn |_|___________|  ̄ \__、("二) ̄ ̄ ̄ ̄ ̄ ̄ _|_|__|_
A 問題
____ / ─ ─\ / (●) (●)\ さあどこからでも / (__人__) \ かかって来なさい | ` ⌒´ | \ / ノ \ . /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) / ̄ ̄\ /ヽ、_ \ (なんだてめぇ……) ( (● ) | (ノ、__) | 数列の奇数番目の要素の |⌒´ | 和を求めろ | -‐`‐'チ-..| / \ `'x::'´:::::::::::::::::::::::::7 / > __ヽ___::::::::::::〈. \/7,/ /::`ヽ::::::::::::::::::::::: ̄`:::::::`:..、 ,// / l:::::::::::ヽ:::::::::::::::::::::::::::l:::::::::::::`:.、 l ′ 7ァ |::::::::::::::ヽ::::::::::::::::::::::::!:::::::::::::::;イ l / `、::::::::::::∨::::::::::::::::::/:::::::::::::/::l. }‐...x' `、:::::::::::`、::::::::::/:::::::::::::/:::::〉/ニニソ `;:::::::::::::`,::::::::/::::::::::::/::::::::|/:::::::/ `;:::::::::::::`,:::/:::::::::/ l::::::::::::!:::::::/ 〉::::::::::::::Y:::::::::/. l:::::::::::l}::::/ ____ / \ /\ キリッ / (ー) (ー)\ / ⌒(__人__)⌒ \ ifilter の出番だお | |r┬-| | テンプレートは省略するお \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
solve :: StateT BS.ByteString IO ()
solve = do
n <- int'
xs <- intsU'
printBSB . U.sum $ U.ifilter (const . even) xs
B 問題
/ ̄ ̄\ /ヽ、_ \ 文字列 S が文字列 T の ( (● ) | 連続部分列とマッチする (ノ、__) | か調べろ |⌒´ | | -‐`‐'チ-..| / \ 詳しくは問題文を読め `'x::'´:::::::::::::::::::::::::7 / > __ヽ___::::::::::::〈. \/7,/ /::`ヽ::::::::::::::::::::::: ̄`:::::::`:..、 ,// / l:::::::::::ヽ:::::::::::::::::::::::::::l:::::::::::::`:.、 l ′ 7ァ |::::::::::::::ヽ::::::::::::::::::::::::!:::::::::::::::;イ l / `、::::::::::::∨::::::::::::::::::/:::::::::::::/::l. }‐...x' `、:::::::::::`、::::::::::/:::::::::::::/:::::〉/ニニソ `;:::::::::::::`,::::::::/::::::::::::/::::::::|/:::::::/ `;:::::::::::::`,:::/:::::::::/ l::::::::::::!:::::::/ 〉::::::::::::::Y:::::::::/. l:::::::::::l}::::/ ____ / \ /\ キリッ / (ー) (ー)\ / ⌒(__人__)⌒ \ | |r┬-| | S 中の '?' 文字は任意の 1 文字にマッチするお \ `ー'´ / S の連続部分列を全探索すればいいお ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
match :: String -> String -> Int -> Bool
match s t offset = inner (drop offset s) t
where
inner _ [] = True
inner (a : as) (b : bs)
| a == b || a == '?' = inner as bs
| otherwise = False
solve' :: StateT BS.ByteString IO ()
solve' = do
!s <- BS.unpack <$> line'
!t <- BS.unpack <$> line'
let d = length s - length t
printYn $ any (match s t) [0 .. d]
/ ̄ ̄ \ -、_ _,ノ ヽ、__ / / ,〉、 2 回も RE を (=)(= )/ ´/ /) 出してるじゃねぇか (__人_) { , ' ´,/ '、`⌒ ´ V __, <´ | 〈´/::::Λ | ヤ::::::::::::::Λ `ュ`ー─ー V::::::::::::::Λ /ム _ , -./V::::::::::::::Λ、 _,. -/:/===/´..::/i:::::::::::::::::::Vヘ //./.::::{ | :::::/::::i::::::::::::::::::.∨} j ::::::::>.:::::::l |::::::::::::::i::::::::::::::::::::レ; i :::r :〈 ::::::::i |::::::::::::::::〉、:::::::::::::::::ノ i :::| :::::'., ::::i {:::::::::::::::::::::`::-==::イ | :::| ::::::::',::::i ',:::::::::::::::::::::::::::::::::::/ ____ / \ /\ キリッ / (ー) (ー)\ / ⌒(__人__)⌒ \ | |r┬-| | inner の停止条件でハマったお \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
C 問題
/ ̄ ̄\ /ヽ、_ \ N 人のユーザに M 個の ( (● ) | コンテストの閲覧権限を付与 (ノ、__) | していく |⌒´ | | -‐`‐'チ-..| / \ 1 つ or 全コンテストの閲覧 `'x::'´:::::::::::::::::::::::::7 / > 権限が付与されて行くとき、 __ヽ___::::::::::::〈. \/7,/ コンテスト参加可否クエリに /::`ヽ::::::::::::::::::::::: ̄`:::::::`:..、 ,// / 応えよ l:::::::::::ヽ:::::::::::::::::::::::::::l:::::::::::::`:.、 l ′ 7ァ |::::::::::::::ヽ::::::::::::::::::::::::!:::::::::::::::;イ l / `、::::::::::::∨::::::::::::::::::/:::::::::::::/::l. }‐...x' `、:::::::::::`、::::::::::/:::::::::::::/:::::〉/ニニソ `;:::::::::::::`,::::::::/::::::::::::/::::::::|/:::::::/ `;:::::::::::::`,:::/:::::::::/ l::::::::::::!:::::::/ 〉::::::::::::::Y:::::::::/. l:::::::::::l}::::/ ____ / \ /\ キリッ / (ー) (ー)\ 閲覧権限が剥奪されることは無いお / ⌒(__人__)⌒ \ | |r┬-| | 全コンテスト閲覧権と各コンテスト閲覧権を \ `ー'´ / 別々に持てば、どのクエリも O(1) か O(log N) で処理できるお ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
solve :: StateT BS.ByteString IO ()
solve = do
(!n, !m, !q) <- ints3'
!qs <- U.replicateM q $ do
int' >>= \case
1 -> (1 :: Int,,) <$> int' <*> int'
2 -> (2 :: Int,-1,) <$> int'
3 -> (3 :: Int,,) <$> int' <*> int'
sets <- VM.replicate n IS.empty
done <- UM.replicate n False
res <- (`U.mapMaybeM` qs) $ \case
(1, pred -> !x, !y) -> do
GM.modify sets (IS.insert y) x
pure Nothing
(2, -1, pred -> x) -> do
GM.write done x True
pure Nothing
(3, pred -> x, !y) -> do
b1 <- GM.read done x
b2 <- IS.member y <$> GM.read sets x
pure . Just $ b1 || b2
printBSB $ unlinesBSB $ V.map ynBSB $ U.convert res
/ ̄ ̄\ /ヽ、_ \ Immutable に解こうとは ( (● ) | 思わねぇのか? (ノ、__) | |⌒´ | | -‐`‐'チ-..| / \ `'x::'´:::::::::::::::::::::::::7 / > __ヽ___::::::::::::〈. \/7,/ /::`ヽ::::::::::::::::::::::: ̄`:::::::`:..、 ,// / l:::::::::::ヽ:::::::::::::::::::::::::::l:::::::::::::`:.、 l ′ 7ァ |::::::::::::::ヽ::::::::::::::::::::::::!:::::::::::::::;イ l / `、::::::::::::∨::::::::::::::::::/:::::::::::::/::l. }‐...x' `、:::::::::::`、::::::::::/:::::::::::::/:::::〉/ニニソ `;:::::::::::::`,::::::::/::::::::::::/::::::::|/:::::::/ `;:::::::::::::`,:::/:::::::::/ l::::::::::::!:::::::/ 〉::::::::::::::Y:::::::::/. l:::::::::::l}::::/ ____ / \ /\ キリッ / (ー) (ー)\ Immutable に解くには、 scan してから mapMaybe すれば良いみたいだお / ⌒(__人__)⌒ \ やる夫は逆に 2 回走査するのがしっくり来ないお | |r┬-| | \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
D 問題
/ ̄ ̄\ /ヽ、_ \ 問題文を読め ( (● ) | (ノ、__) | |⌒´ | | -‐`‐'チ-..| / \ `'x::'´:::::::::::::::::::::::::7 / > __ヽ___::::::::::::〈. \/7,/ /::`ヽ::::::::::::::::::::::: ̄`:::::::`:..、 ,// / l:::::::::::ヽ:::::::::::::::::::::::::::l:::::::::::::`:.、 l ′ 7ァ |::::::::::::::ヽ::::::::::::::::::::::::!:::::::::::::::;イ l / `、::::::::::::∨::::::::::::::::::/:::::::::::::/::l. }‐...x' `、:::::::::::`、::::::::::/:::::::::::::/:::::〉/ニニソ `;:::::::::::::`,::::::::/::::::::::::/::::::::|/:::::::/ `;:::::::::::::`,:::/:::::::::/ l::::::::::::!:::::::/ 〉::::::::::::::Y:::::::::/. l:::::::::::l}::::/ ____ / \ /\ キリッ / (ー) (ー)\ div, mod を取って頑張るお / ⌒(__人__)⌒ \ | |r┬-| | \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
solve :: StateT BS.ByteString IO ()
solve = do
(!n, !d) <- ints2'
!xs <- intsU'
-- d = 0 の場合は例外として処理する
when (d == 0) $ do
let !xs' = U.modify VAI.sort xs
let !len = length $ U.group xs'
printBSB $ n - len
liftIO exitSuccess
-- x_i を D で割った余り (r_i) 事に
-- x_i を D で割った商 (q_i) を集める
let !byR =
V.accumulate
(flip (:))
(V.replicate d [])
. V.map (\x -> let (!q, !r) = x `divMod` d in (r, q))
$ U.convert xs
-- 商の差が 1 以下のグループ毎に、最大何要素を残せるか調べ、和を取る
let eval :: [Int] -> Int
eval =
sum
. map (f . {- 連長圧縮 -} map length . group)
. HT.groupBy (\a b -> b - a <= 1)
. U.toList
. U.modify VAI.sort
. U.fromList
where
-- DP
f = uncurry max . foldl' step s0
where
s0 = (0, 0) :: (Int, Int)
step (!from1, !from2) x = (from2 + x, max from2 from1)
-- 最大何要素残るか
let nRest = V.sum $ V.map eval byR
-- 最小何要素消せば良いか
printBSB $ n - nRest
E 問題
____ / \ /|(●)⌒) \ / < \ | |(●)、_,) | \ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ____ / \ / ─ ─\ / (⌒) (⌒) \ 分かんないお | (__人__) | \ ` ⌒´ / ノ \ . /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) / ̄ ̄\ / _ノ \ Upsolve しろ | (● ) ) 死にたくなければな | (__人) | `⌒´ノ | } ', __ / ≦ニニ≧s。_ ノニニニ二二エ≧s, 。s≦ニニニ二二二二从 /ニニニニニニニニニ二j jニニニ二二二二/二ニェ| ノニニニ二二二/二二二二| (ニ二二二二二/ニニニニエj ノ二二ニニニェ/ニニニニェノ /ェ二二ゝ二二7ニニニニェ/ /ニニル' wニニ7二二二ニニ( /ェニル' Wニニlニニニニ二ム /ェニ/ i!ェニlニニニニ二/ /ェニ二Y ノエニ\ニニ二二入 \二二\ i!二ニニェ\ニニニニi! \二ニェ>ニニ二二二\ェニ二\ \ニミjニニ二二二二二\ニニ二/ ヽ jニニニニニニニニ/\ニノマ 从ニニニ二二二/ 八 j |ニニニ二二二二/ jエミ! |ニニニ二二二7 jェニム はいだお…… └‐=ニ⌒ ̄7`' 7 , ノニニム lェニ二二l 孑个´ニニ二:ム lェニ二二l ∧ェニ二二ム lェニ二二l ∧ェニ二二i!
F 問題
____ / \ /|(●)⌒) \ / < \ | |(●)、_,) | \ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ____ / \ / ─ ─\ / (⌒) (⌒) \ 分かったお | (__人__) | \ ` ⌒´ / ノ \ . /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
G 問題
____ / \ /|(●)⌒) \ / < \ | |(●)、_,) | \ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ____ / \ / ─ ─\ / (⌒) (⌒) \ 分かんないお | (__人__) | \ ` ⌒´ / ノ \ . /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ___ / \ / ヽ | \ / | こういうことだろッ | (●) (●) ! | (__人_) | . _ l `⌒´ ! . ヽニ二/´};;;;;_>.、 ヽ / lヽ、 /〈 〈/ /::ヽ::::::>..、 _ > <-‐/:::/ . /_/ヘ_lヽゝー::ヽ:::::::::ノ7、/ト、 ノ /ヽ-/∠__ ⊂ -'‐-、::` ̄`¨/:/ /:::::ヽ、 //:/:ー::;:-::::`ヽ  ̄ ̄´`7ヽヽ、::::::/::`>.v'、:://<:::::::l}::l / ゝ \V, ':::::::::::::―'`ヽ、::ヽ:::ヽ:l|:::! `>、/ <:::::::::::::::::::::::::::::::::::\::ヽ:::||:::! />l__`≧_、::::::::::::::::::::::::::::::::::ヽ::/ ____>--――</ l / >、::ー:::::::::::::::::::::K _>―'":; -――――ォ< ,' / / ヘV:>、::::::::::::::_ノ:::`ヽ、 ∠_::::::::::/ > '"´ l / / ヘV:::::::: ̄ ̄:::::::::::>===< V `ヽ/ >'" | V,i´ ヾ、::::::::;><´ ___ _ ヽ、 〉'" l / _ l/ ̄ `>、 ー  ̄`´ ̄`>、_ ヘ / ー -― \ ` / / ヽ まさか、やらない夫!? _∠:::::l /  ̄ `ヽ、\- / / / r‐<ヽ::::::::::;>===r―┬==< \ ヘ 〉 , / /// ノ`ヽ::::::〉<>.==┴‐ ┴-< 二`>、 !二二二二二彡_>' >'" }:////::::::::ヽ/:::ー:::::::::::::::::`>..、_ノ!/_____>'" .| / ! / .l __/_ ! / / \ ! /. / _ノ \ .l │. /(● )(●) AC. そのまさかだよ .| │ / (__人__) ! │. / ` ⌒´ノ モノイド積を取ればいいだけだろ ! │ / } 常識的に考えろよ | ノ./ヾ.ヘ } ..=ィ゙ニ| /、;i;i;ヾヘ _ノ . : :イ/{ / ̄ヾ}l!;i;i;iLc、> . / '/,ム{ ∧ }ー-,-、《;i〈 . !:.,'〃´ハ{/ ハ::〃,=ヾミ;i . :.:{/' 〃゙ヽ__ノヽi/´ }\ . :.:|!、/ ヽ::Y::/{ r、/ム .\ . !:.!ム ヽj::ノ{ | ,';i;iム ヽ. . Ⅵマ\ _ ヽ';i乂__.ソ;i;i;i;i| 丶 . トj0l|Y´\{ } Y;i;i;i;i;i;i;i;i;i;iト, \ . `!0j;iト、 ヾ__.人;i;i;i;i;i;i;i;i;i;i;{ \ . 〈ソ,∧ \ 「 ! Y;i;i;i;i;i;i;i;i;iム . j、;i;i;、 \___丿;i;i;i;i;i;i;i;i;i;iム . /.:::∨;i;i`i.、___ノ;i\;i;i;i;i;i;i;i;i;i;i;iム . ::::::::.∨;i;i|:;i;i;i;i;i;i;i;i;\;i;i;i;i;i;i;i;i;i;ム . 、_:::::::∨;i|:;i;i;i;i;i;i;i;i;i;i;i;丶:;i;i;i;i;i;i;i;ム . ::ーニ=イ};i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i\:;i;i;i;i;i;i;i〉 . ヽ:::::::::ノ;i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i\:;i;i;/ . ヽ/;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i\:〉 . ../;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;\ . ,ゝ;i;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i/ 丶 . i;i;i;i;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;/ \ . i;i;i;i;i;i;i;i;i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i∧ . i;i;i;i;i;i;i;i;i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i/. ム . i;i;i;i;i;i;i;i;i:l:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i//マ___ . 、i;i;i;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;}/イ;;;;;;;;;`! . ';i;i;i;i;i;i;i;i:l:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;iム.;;;;;;;;;;;;;;;;;〉 ____ / \ / ⌒ ⌒ \ 平衡二分木も動的セグメント木も ac-library-hs に / (●) (●) \ 入っているから言語アップデートが楽しみだお | 、" ゙)(__人__)" ) ___________ \ 。` ⌒゚:j´ ,/ j゙~~| | | | __/ \ |__| | | | | | / , \n|| | | | | | / / r. ( こ) | | | | | | ⌒ ーnnn |\ (⊆ソ .|_|___________|  ̄ \__、("二) ̄ ̄ ̄ ̄ ̄l二二l二二 _|_|__|_
以上
____ / \ / ─ ─\ / (⌒) (⌒) \ みんなも頑張って AtCoder を生き残ってくれお | (__人__) | おすすめの言語は Haskell だお \ ` ⌒´ / ノ \ . /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) .| / ! / .l __/_ ! / / \ ! /. / _ノ \ .l │. /(● )(●) 解けなかった問題は .| │ / (__人__) 今すぐ upsolve しろ! ! │. / ` ⌒´ノ ! │ / } | ノ./ヾ.ヘ } ..=ィ゙ニ| /、;i;i;ヾヘ _ノ . : :イ/{ / ̄ヾ}l!;i;i;iLc、> . / '/,ム{ ∧ }ー-,-、《;i〈 . !:.,'〃´ハ{/ ハ::〃,=ヾミ;i . :.:{/' 〃゙ヽ__ノヽi/´ }\ . :.:|!、/ ヽ::Y::/{ r、/ム .\ . !:.!ム ヽj::ノ{ | ,';i;iム ヽ. . Ⅵマ\ _ ヽ';i乂__.ソ;i;i;i;i| 丶 . トj0l|Y´\{ } Y;i;i;i;i;i;i;i;i;i;iト, \ . `!0j;iト、 ヾ__.人;i;i;i;i;i;i;i;i;i;i;{ \ . 〈ソ,∧ \ 「 ! Y;i;i;i;i;i;i;i;i;iム . j、;i;i;、 \___丿;i;i;i;i;i;i;i;i;i;iム . /.:::∨;i;i`i.、___ノ;i\;i;i;i;i;i;i;i;i;i;i;iム . ::::::::.∨;i;i|:;i;i;i;i;i;i;i;i;\;i;i;i;i;i;i;i;i;i;ム . 、_:::::::∨;i|:;i;i;i;i;i;i;i;i;i;i;i;丶:;i;i;i;i;i;i;i;ム . ::ーニ=イ};i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i\:;i;i;i;i;i;i;i〉 . ヽ:::::::::ノ;i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i\:;i;i;/ . ヽ/;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i\:〉 . ../;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;\ . ,ゝ;i;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i/ 丶 . i;i;i;i;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;/ \ . i;i;i;i;i;i;i;i;i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i∧ . i;i;i;i;i;i;i;i;i:!:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i/. ム . i;i;i;i;i;i;i;i;i:l:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i//マ___ . 、i;i;i;i;i;i;i;i:|:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;}/イ;;;;;;;;;`! . ';i;i;i;i;i;i;i;i:l:;i;i;i;i;i;i;i;i;i;i;i;i;i;i;i;iム.;;;;;;;;;;;;;;;;;〉
AA のフォントは aahub_light をお借りしました。