れとろのメモ置場

とあるSEのメモ置場

AtCoder Beginner Contest224

AtCoder Beginner Contest224に参加しました。

結果

A,B,C問題の3問正解でパフォーマンスが732でした。 C問題が思いの外時間がかかった。最初に選んだ方針が悪かったみたい。
D、E問題はさっぱりわからず、F問題はTLEになるだろうかなと思いつつ解いてみたけどACはできなかった…

A - Tires

文字列の最後かerかistかを見て文字列を出力する。
最後から2文字と3文字の部分文字列を取得して、それがer,istと一致するかどうかを判断する。

B - Mongeness

H,Wは制約的に全探索できる程度の大きさなので全探索する。 全探索のループをちゃんと書ければ解ける問題。

C - Triangle?

N個の点から3つ選ぶ場合の計算量はO(N ^ {3})なのを踏まえて制約を見ると3 \leq N \leq 300なのでNが最大の場合でもTLEにはならなさそう。 点を3つ選ぶのは問題なくできそうで、次は点3つが三角形になるかどうかをどう判断するのかを考える。
最初は3点から3辺の長さを計算して、三角不等式が成り立つかどうかで判断しようとしてたけどサンプルの解とちょっと違った。他に判断方法がないかなと調べてたらベクトルの外積で面積を求めて判断する方法があったのでその方法で解いてみた。こっちの場合は上手くいきそうだったので提出したら無事ACできた。
最初のほうだと平方根の計算が必要でそのときに小数点以下の部分で誤差が出てたのかなあ。