競技プログラミング日記

主に AtCoder の記事です

2023-06-11から1日間の記事一覧

AtCoder Beginner Contest 305C

ABC305C 角が欠けているときだけ注意.もとの長方形の大きさが,1辺が2以上であることにも注意すると, もとの長方形の辺にあたる部分が特定できる. 言い換えると, 一番小さい行, 一番大きい行, 一番小さい列, 一番大きい列 の番号が手に入る. 使って…

AtCoder Beginner Contest 305D

ABC305D 0-indexed とする. 区間毎に値を振っておく. 偶数番目とき数番目の区間に対して,0 と 区間の長さを対応させる. この値に関して累積和をとればよい. 区間の端だけ中途半端になりうるので微調整.\(l,r\)が与えられたときに,どの区間に\(l,r\)が…

AtCoder Beginner Contest 305E

ABC305E 多始点Dijkstra. 各警備員に対して,警備している頂点を求める. 警備するたびに体力が減っていくと考えると, 残り体力を保持しながら遷移する. ただし,このままではTLE.頂点 \(v\) であって,\(v\) を複数の警備員が警備されているものを 任意に…