パフォーマンス:1990相当
レーティング:1782→1805 (+23) :)
#AtCoder #ABC476
atcoder.jp/users/mjtai/...
パフォーマンス:1990相当
レーティング:1782→1805 (+23) :)
#AtCoder #ABC476
atcoder.jp/users/mjtai/...
B 実装は簡単
C 面白そうだけど何も考えずpriority_queue
D 10分くらい固まってた 内容は簡単だが
E 簡単すぎると思ったら実装が意外と
F 誤読したから本質は解けていたが、45度回転の実現が本当に難しかった
B 実装は簡単
C 面白そうだけど何も考えずpriority_queue
D 10分くらい固まってた 内容は簡単だが
E 簡単すぎると思ったら実装が意外と
F 誤読したから本質は解けていたが、45度回転の実現が本当に難しかった
パフォーマンス:1402相当
レーティング:1180→1204 (+24) :)
#AtCoder #ABC476 atcoder.jp/users/doDayl...
水色復帰!
パフォーマンス:1402相当
レーティング:1180→1204 (+24) :)
#AtCoder #ABC476 atcoder.jp/users/doDayl...
水色復帰!
5完でした
A: 文字比較
B: 全ての添字iについて、T_i='*'またはS_i=T_i
C: 順序付き集合を使用
D: 買うドリンクの数を増やしながら購入可能なデザートの個数を二分探索
E: セグ木を使用。各ノードでは区間内の最小値、最大値及びそれらの位置を記録。演算の結果が常に相手になる単位元を追加
5完でした
A: 文字比較
B: 全ての添字iについて、T_i='*'またはS_i=T_i
C: 順序付き集合を使用
D: 買うドリンクの数を増やしながら購入可能なデザートの個数を二分探索
E: セグ木を使用。各ノードでは区間内の最小値、最大値及びそれらの位置を記録。演算の結果が常に相手になる単位元を追加
C multisetに上位3つを保持して最小を出力。priority_queueを使う方が普通かも。
D A,Bともに昇順にする。Bの購入数は0~Mまで全探索してゆき、残りでAをいく使えるかはAを累積和しておけば二分探索で求められる。
Bのお釣りの計算間違いと、Bを0個購入が処理から漏れていて大苦戦....
E maxとminのセグ木を持つ
F 解けず。xorを何かしらの計算に読み替える方法があれば嬉しいが(そうすればマスごとの寄与を累積和を使って表せそう)、知りません...
C multisetに上位3つを保持して最小を出力。priority_queueを使う方が普通かも。
D A,Bともに昇順にする。Bの購入数は0~Mまで全探索してゆき、残りでAをいく使えるかはAを累積和しておけば二分探索で求められる。
Bのお釣りの計算間違いと、Bを0個購入が処理から漏れていて大苦戦....
E maxとminのセグ木を持つ
F 解けず。xorを何かしらの計算に読み替える方法があれば嬉しいが(そうすればマスごとの寄与を累積和を使って表せそう)、知りません...
C
multiset に先頭から突っ込んでいって prev(prev(prev(multiset.end()))) を都度出力する
D
ドリンクを買う個数を全探索。ドリンクを買う個数をC個とすると、手持ちのKドル紙幣でドリンクC個買えないならスキップ。この判定は B を切り上げ除算した数列の累積和を使うと高速に求められる。ドリンクC個変えるなら、残りの手持ちでデザートをいくつ買えるかを累積和を使って求める。
E
最小値を求めるセグ木と最大値を求めるセグ木使って swap すべき位置を都度求める。
C
multiset に先頭から突っ込んでいって prev(prev(prev(multiset.end()))) を都度出力する
D
ドリンクを買う個数を全探索。ドリンクを買う個数をC個とすると、手持ちのKドル紙幣でドリンクC個買えないならスキップ。この判定は B を切り上げ除算した数列の累積和を使うと高速に求められる。ドリンクC個変えるなら、残りの手持ちでデザートをいくつ買えるかを累積和を使って求める。
E
最小値を求めるセグ木と最大値を求めるセグ木使って swap すべき位置を都度求める。
A問題はやるだけ
B問題はT[j]=='*'で強制trueで一致判定
C問題はBinaryHeapで殴る
D問題は設定が意味不明な文章題
とりあえず各販売機の中身を値段の昇順にソートしておき、デザートを全部買う
その後、ドリンクを買う個数を1つずつ増やしていき、デザートを削っていく
これでトレードオフを全部試して最大値が答え
ドリンクを買ったときにお釣りを取り忘れて1ペナ食らって恥ずかしい
E問題はセグ木上の二分探索
ちょっとめんどくさいだけで、見えればやるだけ
A問題はやるだけ
B問題はT[j]=='*'で強制trueで一致判定
C問題はBinaryHeapで殴る
D問題は設定が意味不明な文章題
とりあえず各販売機の中身を値段の昇順にソートしておき、デザートを全部買う
その後、ドリンクを買う個数を1つずつ増やしていき、デザートを削っていく
これでトレードオフを全部試して最大値が答え
ドリンクを買ったときにお釣りを取り忘れて1ペナ食らって恥ずかしい
E問題はセグ木上の二分探索
ちょっとめんどくさいだけで、見えればやるだけ
ABCDE 5完 26:00
あったらいいな。こんな累積和。
A:最後がeかどうか
B:1文字ずつ丁寧に見る
C:TOP3だけ持っておけば4つの比較でOK
D:それぞれ安い順に並べ、j番目までの飲み物を買う。残ったお金は好きに使えるので二分探査でデザートを変えるだけ買う。これを飲み物を増やしながらやる。
E:セグ木で最大最小化を管理。(数字→場所)リストと(場所→数字)リストを持っておけば後は交換するだけ。
F:どうせ全マスのコストが必要そう。ピラミッド型の累積和が欲しかったんです僕は。
2連敗からの定位置。
30分切ったときは行けると思ったのにな...
ABCDE 5完 26:00
あったらいいな。こんな累積和。
A:最後がeかどうか
B:1文字ずつ丁寧に見る
C:TOP3だけ持っておけば4つの比較でOK
D:それぞれ安い順に並べ、j番目までの飲み物を買う。残ったお金は好きに使えるので二分探査でデザートを変えるだけ買う。これを飲み物を増やしながらやる。
E:セグ木で最大最小化を管理。(数字→場所)リストと(場所→数字)リストを持っておけば後は交換するだけ。
F:どうせ全マスのコストが必要そう。ピラミッド型の累積和が欲しかったんです僕は。
2連敗からの定位置。
30分切ったときは行けると思ったのにな...
パフォーマンス:2175相当
レーティング:1983→2003 (+20) :)
#AtCoder #ABC476 atcoder.jp/users/tomeru...
戻ってきたが明日ARC++なので1日だけの命
パフォーマンス:2175相当
レーティング:1983→2003 (+20) :)
#AtCoder #ABC476 atcoder.jp/users/tomeru...
戻ってきたが明日ARC++なので1日だけの命
A s[^1]=='e'
B 「*」か同じ文字か
C 上位3個だけmultisetで管理
D 問題文より先に配点を見て飛ばす
E 最大要素と最小要素の位置をセグ木2本で管理して随時更新
D ドリンクの購入数を全探索、デザートの購入数は所持金で買える範囲を二分探索(1ドル紙幣があるので累積和で良い)
↑ 累積和でいいことに気づくまで迷走しまくった上に二分探索の添え字もミスって時間溶かして最悪 無能 バカ 青色コーダーさんその問題D問題ですよ? 貴重な週末の夜をプログラミングの問題を解くという訳のわからないことに時間を費やす
A s[^1]=='e'
B 「*」か同じ文字か
C 上位3個だけmultisetで管理
D 問題文より先に配点を見て飛ばす
E 最大要素と最小要素の位置をセグ木2本で管理して随時更新
D ドリンクの購入数を全探索、デザートの購入数は所持金で買える範囲を二分探索(1ドル紙幣があるので累積和で良い)
↑ 累積和でいいことに気づくまで迷走しまくった上に二分探索の添え字もミスって時間溶かして最悪 無能 バカ 青色コーダーさんその問題D問題ですよ? 貴重な週末の夜をプログラミングの問題を解くという訳のわからないことに時間を費やす
A:AJO予選の画面録画提出をTextでやったのが残っていて無駄に1ペナ付けてしまった…
E:セグ木使うだけなんだけど苦手すぎて手間取り
F:45度回転して累積和使って差分更新
G:info.atcoder.jp/entry/algori... これ読んでたが特に進展せず
A:AJO予選の画面録画提出をTextでやったのが残っていて無駄に1ペナ付けてしまった…
E:セグ木使うだけなんだけど苦手すぎて手間取り
F:45度回転して累積和使って差分更新
G:info.atcoder.jp/entry/algori... これ読んでたが特に進展せず