こんにちは, Shinoryoです.
今回はAtCoder Beginner Contest 314を, Pythonで解いてみた結果を書き連ねていこうと思います.
AtCoder Beginner Contest 314 - AtCoder
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.
A - 3.14
問題文で与えられている円周率の文字列をスライスして出力すればよいです.
B - Roulette
実装方針は, 例えば以下のようになります.
- $X$に賭けている人を対象に, 賭けた目の個数の最小値$C_{\mathrm{min}}$を調べる.
- $X$に賭けていて, 賭けた目の個数が$C_{\mathrm{min}}$である人を$\mathrm{ans}$に格納する.
- $\mathrm{ans}$の要素数とその要素を出力する.
C - Rotate Colored Subsequence
色別に文字列をrotateさせればよいです. 「色$C_i$が塗られている文字の, 文字列$S$におけるインデックス」をあらかじめ調べておくと, 後の処理が楽になります.
D - LOWER
クエリを愚直に実行するだけでは, TLEです.
ここでは, 全体に対する操作を別に考えることが必要です. 個々の文字が最後に変換された時刻と全体の大小が最後に変換された時刻を記録しておき, 個々の文字の変換の後に全体の大小の変換が記録されている場合, 大小変換を行うことにします.
E以降
E以降は私の能力不足故に省略いたします.
0 件のコメント:
コメントを投稿 (Please feel free to ask me about your questions! You can use Japanese or English in the comments.)