AtCoder Regular Contest 114 参加記

2021/3/14に開催されたAtCoder Regular Contest 114に参加しました。

atcoder.jp

前回のARCはAのみの1完という残念な結果だったため、今回はなんとかレートを落とさないようにという気持ちで臨みました。

今回の結果

と、意気込んではみたものの、結果はBのみの1完という残念な結果に。。

ARC114結果

ARC114結果

が、しかし!なんとBのみの1完でも緑中盤程度のパフォーマンスがでており、なんとHighestを少し更新することができました!

振り返り

Bのエスパー一発のみの回でした。

ARC114提出結果

ARC114提出結果

A問題 

A - Not coprime

一読して、素数が絡みそうな問題ということで、エラトステネスの篩のようなもので解けないかと考えてみる。

そして、実装したのが、2〜50の整数について、それに対応する一番小さい素数を最初に計算しておき、あとは各X_iについて、それに対応する素数を答えに掛けるというもの。

これでサンプルは通ったが、いざ提出してみるとWAを喰らってしまう。。

よくよく考えてみると、この方法では、5と15が入力された時に、15が答えとして返ってくることが判明。そこで、Xをソートして計算途中の答えと、これから参照するX_iとのGCDが1の場合のみ、X_iに対応する最小の素数を掛けるということをやってみるが、こいつもWAを喰らってしまう。。。

結局、色々とこねくり回してみて何回か提出したのものの、WAは取れずじまい。B問題が奇跡的に解けて戻ってきた後も検討を継続しましたが、結局時間切れとなりました。

B問題

B - Special Subsets

AのWAが取れない状態で1時間以上浪費したので、とりあえずB問題を覗いてみる。

一読して、なんかグラフっぽいのか、なんなのかよくわからん問題だと思いました。

しかし、よくよくサンプルなどを見た感触で、最初にUnion-Findを作って各af(a)をマージして何種類かのグループに分けて、そのグループを1つ〜全部の選ぶ方法の組み合わせ数が答えではないかとエスパーする。

で、半信半疑でこのやり方で実装してみると、なんと一発でACが取れてしまいました!

AのWAで相当心がやられつつあったので、とりあえず1つACが取れて少し安心しました。

C問題 

C - Sequence Scores

チラ見したけど、早々に諦め。

D問題

D - Moving Pieces on Line

問題すらみれておりません。 

E問題

E - Paper Cutting 2

問題すらみれておりません。

F問題

F - Permutation Division

問題すらみれておりません。

これまでの実績

なんだかんだで、Highest更新となりました。

コンテスト実績

コンテスト実績

総括

今回たまたまエスパー一発でレート更新となりましたが、やはりA問題の考察が至らなすぎてWAが取れなかったのが悔やまれます。ちょっとこの問題は解説なしで自力ACしようということで、現在も取り組んでおります。

ということで、また、次回も頑張ります。