ABC314 (2023/08/12)
https://atcoder.jp/contests/abc314/tasks
〇A問題
Kaplam.icon頑張って書く
TTT.icon double型だと15桁ほどしか格納できないそうなので3.14...は文字列で宣言してからリストに格納し, スライスを使って出力しました.
yuichang.iconrep(i,n+2)cout <<pi(i)
tako.iconやるだけ
CarpDay.iconコピペした文字列をスライス表示
おたふく.icon listで円周率を管理
TK.icon文字列で小数点以下持っとく、後はスライスで指定
〇B問題
Kaplam.icon当たった人の中で最小個数調べてその個数の人を出力、出力部分で2回ミスってWA出した_(:3」∠)_
TTT.icon A[i]の中にXが含まれていている場合, C[i]がCの最小値であればリストのansに何番目の人かを示す番号を追加します.
yuichang.icon当たった人とその人の賭けた数をpairにして配列で管理
tako.icon勝った人をリストに入れていく感じ
CarpDay.icon他の方と同じ方針.賭け数C[i]の存在忘れて無駄コード.デバッグprint消し忘れて1WA...
おたふく.icon 少し汚いが何とか実装
TK.icon賭け数が小さい順に出力と勘違い。一番賭け数が少ない人のみに修正。最小値取ったり、最小の人を回収したりがきれいに書けなかった。
〇C問題
Kaplam.icon普通に回したらTLE出たので別の数字同士は干渉しないのを利用して一気に動かした、でも出力部分ミスってもう1WA_(:3」∠)_
TTT.icon N < 2*10^5なので愚直に回さないアルゴリズムをいろいろと考えていましたがうまく書けませんでした. 勉強会で解説お願いします. この問題以降は見ていません.
yuichang.iconc(i)の数値ごとに多次元配列を構築。modで疑似ローテーション
tako.icondefaultdictとdequeを使いました
CarpDay.iconyuichang.iconさんと多分同じ.最初,色の個数だけローテーションすると勘違い(それだと元に戻る)して時間ロス.リストのスライス使ったけど,tako.iconさんのdequeの方が遥かにキレイ.
おたふく.icon _list = v[-1] + v[0 : len(v) - 1]で文字をローテーション
TK.icondefaultdictで色ごとの文字を持っておく、後は辞書内で順番並び替えておく。それを入力値Cのリストを参照しながら順番に出力
〇D問題
Kaplam.icon正面からやるとTLE出そうだったので大文字/小文字にするのを最後の1回だけ、同じ場所の書き換えも最後の1回だけにしたら通った、C,D両方文字の扱いになれてなくてエラー沢山出て時間かかった
yuichang.iconクエリ2,3が来た回数をメモ。値、クエリ2,3が来た回数をpairにした配列を構築。大事なのは最後に来たクエリが2,3のどちらかってこと。Sakoつよw
tako.icon1が来たら変わった位置をsetに保持、2,3が来たらsetをリセット。今確認したら緑行ってました。やったね
CarpDay.iconおめでとう!
CarpDay.icon最後の変換だけ注目すれば良いことに気付くのに時間がかかる.累積和のように,変換過程を保存する方法をどう実装しようか悩んだだけ時間ロス.文字列とリストを行ったり来たりしたのも無駄でした.
おたふく.icon 一番最後に来たt = 2 or 3のindexを管理しておいて、その時だけ大文字小文字の変換を行い、全てのt = 1の処理は行う方針で実装。前回のtako.iconと同様、if文内で変数を初期化しており、コーナーケースとしてそのif文に入らない時にRE。
TK.icon一番最後の全体変更(t=2 or t=3)のクエリのタイミングを探す。後はそれまでの全体変更のクエリは無視して、文字の変更のみ行う。その後、全体変更を一回のみ行い、残りの文字変更をする。全体変更がない場合は、文字変更を淡々と行う。
〇E問題
Kaplam.icon見た瞬間諦めた
yuichang.icon期待値DP勉強しないとダメらしい。
tako.icon期待値マジでわからん
CarpDay.icon目標ポイントより大きい目は目標ポイントと価値が同じ点を考慮して,各ルーレットを回したときの期待値/コストを求め,現在のポイントに応じた最適なルーレットを選ぶところまで実装して時間切れ.でもこの方法では入力例2のように出目に0がある場合,状態遷移がループになって,DPができないことに気付く.幾何分布の期待値考える?解説読んで,出目に0があるときの対処法を理解.なるほどね.解説補足作りました(ネタバレ注意)
おたふく.icon 期待値DPなので解説を見ずに少し考えてみる。遷移の部分は自力で実装できたが、入力例2で何故WAか理由が分からず、結局解説を見る。0が悪さをしていることを知ったが、0の対処法を理解するのに時間がかかった。
〇F問題
CarpDay.iconコンテスト後に挑戦.入力例1を確認して思いついた解法でAC.実装に1時間弱かかったので,実装力付けたい.
#AtCoder #ABC #期待値DP