2022年12月1日木曜日

Codeforces Round #836 (Div. 2)

  遅刻してA一完。Bでハマってしまった。


B. XOR = Average

 nが奇数のときは[1]*nで良い。
 コンテスト中20分以上考えたが、nが偶数のときを思いつかなかった。最後の二要素で辻褄合わせをする……みたいな方針を考えたが上手くいかなかった。

 結論からいうと、[1,3]の後に[2]を続ければ良い。

 二要素で条件を満たすものがあれば、後にずっとその値を続ければ良いですね。言われてみれば当たり前。

E. Tick, Tock

 解説ツイートなどを見てAC。

・矛盾するかの判定→重み付きUnion-findで行、列ごとに管理
・答えを求める部分→A[i][j]が-1なら行iと列jをUnionして、連結成分数を見る。全体の連結成分が1よりいくつ大きいかを求めて、hをそのベキ乗したのが答え

 とした。

 矛盾するかの判定は自分で考えたこともあり、二度手間になっている気がするけどもっと楽にできるのかな? よく分かっていない。

0 件のコメント:

コメントを投稿