Toy と帽子と ADP BE

主にプログラミングに関わる話をゆるくエモくやっていきます

AtCoder Grand Contest 058

1完1WA。45:08 + 5:00。 これで5完した昨日のABCよりパフォ上らしいですよ?! 各問題 A - Make it Zigzag まず1, 2, 3番目を見ます。これらの大小関係は1 < 2 > 3となってほしいので、これらの3つの数の中で最も大きいものを真ん中に持ってきます。 次に3, …

freee プログラミングコンテスト2022(AtCoder Beginner Contest 264)

5完2WA。 各問題 A - "atcoder".substr() 問題名が示すとおり、お使いの言語の部分文字列を取得する関数を使えばよいでしょう。ループでもよいです。(自分はそちら) B - Nice Grid 頑張ってグリッドを再現します。そうすればあとは(R, C)がどちらかを答え…

LINE Verda プログラミングコンテスト(AtCoder Beginner Contest 263)

4完。 各問題 A - Full House どう解くのが最適なのかわからず。 自分はサイズ13の配列を作って出現数をカウントして、3と2があればYesとしました。 B - Ancestor P_Nから遡ればよいだけです。 C - Monotonically Increasing 与えられた条件で狭義単調増加は…

第三回日本最強プログラマー学生選手権-予選-(ABC262)

3完。19:12。 各問題 A - World Cup 4で割った余りが0のときY+2、1のときY+1、2のときY、3のときY+3です。自分は安全にif-elseで4通り書きました。 B - Triangle (Easier) どの辺が連結しているかをmap<int, set>で持って全探索しました。 C - Min Max Pair 条件を満た</int,>…

AtCoder Regular Contest 145

2完4WA。 各問題 A - AB Palindrome 実は両端を除いては任意のAB文字列を作ることが可能です。両端については左端がBで右端がAのときは無理です。またN = 2, S = "AB" も無理です。 B - AB Game nがA未満のときは、Aliceは何もできないので勝てません。よっ…

AtCoder Beginner Contest 261

4完、16:28。 各問題 A - Intersection 算数でやろうとすると場合分けでひどい目に合いそうだったので、整数の配列を作って塗られている部分に+1をして、2になっている部分が両方で塗られているとしました。 自分はうっかり閉区間でやってしまい、あとで答え…

AtCoder Beginner Contest 260

4完4WA。 各問題 A - A Unique Letter どうやるのが正解なのかよくわからず...。 自分は vector<int>(26) で各文字の出現数を数えて、1つのものを出力するようにしました。 B - Better Students Are Needed! どうやるのが正解なのかよくわからず2...。あと誤読し</int>…

AtCoder Regular Contest 144

3完1WA。 コンテストで600点問題通したのは(記憶が正しければ)1年8ヶ月ぶりくらいらしいです。青パフォも今年初めて。 各問題 A - Digit Sum of 2x x + xが繰り上がりの発生する'x'だったときと発生しない'x'だったときを考えると、前者のf(x) <= 後者のf(…

gitでforce pushされたものを取り込まざるをえないときにやること

毎回ググってるような気がするのでここに書き記しておくシリーズその5。 そもそもforce pushすんな(させんな)って話ですが、されちゃったものはしかたない。 git reset --hard origin/branch-name なんもかもぶっとばしてoriginに合わせてしまうので注意。

AtCoder Beginner Contest 259

4完1WA。 各問題 A - Growth Record MがX以上なら答えはもちろんTです。そうでなければ、まずT - (D * X)で0歳時点の身長を求め、それに(D * M)を足せばM歳時点の身長が求められます。 B - Counterclockwise Rotation 行列なり三角関数なりで計算すればよい…

AtCoder Beginner Contest 258

4完。しかしBに40分以上持っていかれました...。 各問題 A - When? 分が一桁になるときが面倒なので、書式つきprintでやるのが正道でしょうか。自分は0 < 10 < 60 < 70 < 100の場合分けをしました。 B - Number Box 縦と横を勘違いする 方向を最初に固定では…

AtCoder Regular Contest 142

2完6WAで緑落ち。 各問題 A - Reverse and Minimize まずKが10の倍数であるかKを反転したK'がKより小さい場合、答えは0です。 そうでない場合、KとK'がN以下なら答えになりえますし、それらに10を掛けていってN以下である間は答えとなりえます。(KとK'が同じ…

東京海上日動プログラミングコンテスト2022(AtCoder Beginner Contest 256)

4完3WA。 1年1ヶ月ぶりの茶Diff...。 各問題 A - 2N (int)pow(2, N) B - Batters シミュレーションすればよいです。 C - Filling 3x3 array 枝狩りしながら再帰すれば間に合います。実装がとても面倒くさいことになりましたが...。 D - Union of Interval 座…

エイシングプログラミングコンテスト2022(AtCoder Beginner Contest 255)

4完1WA。 各問題 A - You should output ARC, though this is ABC. ちょっと方針に迷って、素直に二次元配列を作って出力しました。この問題ならif文4つ書くのもありっちゃあり。 B - Light It Up さんざん迷走したあげく、二分探索でときました。 最初は公…

AtCoder Beginner Contest 254

4完2WA。 各問題 A - Last Two Digits 文字列で取って後ろ二文字を出力します。 B - Practical Computing 問題文の漸化式をそのまま実装します。 C - K Swap iをKで割って余りが同じになる位置は任意に移動できるので、iをKで割って余りが同じになる位置毎に…

AtCoder Beginner Contest 252

5完2TLE。 各問題 A - ASCII code Nをcharにキャストして出力します。 B - Takahashi's Failure まず、おいしさの最大値を調べて、おいしさが最大の食品の番号がBに含まれてないかどうかを調べます。 C - Slot Strategy (0-indexedで) 止めたい数字が0番目…

AtCoder Regular Contest 140

2完、8WA。やりすぎたー。 各問題 A - Right String ある文字列Uの繰り返しの形にできれば、種類数はUの長さLにすることができます。Uの繰り返しにするためにはL文字間隔で同じ文字が出現すればよいです。 つまりabcabcabcなら、長さ3の文字列abcの繰り返し…

パナソニックグループプログラミングコンテスト2022(AtCoder Beginner Contest 251)

3完...。 各問題 A - Six Characters Sが1文字なら6連結、Sが2文字なら3連結、Sが3文字なら2連結して出します。 一般化するとSを6 / |S|連結して出します。1も2も3も6の約数なのでこの一般化が可能です。 B - At Most 3 (Judge ver.) Nがたかだか300なので、…

AtCoder Regular Contest 139

1完、29:37。 各問題 A - Trailing Zeros 以下、0オリジンで。 xに対して、T_iだけ下位ビットを0で埋める ctz(A_i) = T_i を満たすため xに2^T_iを加算する 0埋めした後のxは元のx以下なので、狭義単調増加の条件を満たすため 演算後の数値は少ないに越した…

モノグサプログラミングコンテスト2022(AtCoder Beginner Contest 249)

4完。 各問題 A - Jogging 算数をすれば解けるのは分かるのですが、自分の算数力を悲観しすぎてしまいループを書きました。 ただ、効率的なアルゴリズムが思いつかず、A問題なのに地獄のようなコードに...。今日通したDまでの中で一番複雑なコードになってし…

ユニークビジョンプログラミングコンテスト2022(AtCoder Beginner Contest 248)

5完3WA2TLE。 けんちょんさん (@drken1215) の有理数ライブラリのおかげで命拾いしたー。 各問題 A - Lacked Number 0から9までのバケツ(要するに要素数10の配列)を作って、与えられた数字を一つずつ確認してバケツに入れて(つまりa[数字]を+1して)いき…

AtCoder Beginner Contest 247

4完2WA。 5ヶ月ぶりに緑落ちでございます。 各問題 A - Move Right "0s[0]s[1]s[2]" を出力。 B - Unique Nicknames Nが100なので、各人について「他の人の」姓名と一致しないかどうか全探索すればよいです。 自分は、全探索が思いつかず、これ難しすぎない…

AtCoder Beginner Contest 246

4完2WA。 さて、ABC今日は久々にアルコールがはいっておるぞよ— Toy (@mdstoy) 2022年4月2日 晩御飯は居酒屋でした...。 各問題 A - Four Points 示されたxとyそれぞれの3つは、同じ値が2つと異なる値が1つになるので、それぞれの異なる値を出力すればOKです…

AtCoder Beginner Contest 244

5完。 各問題 A - Last Letter cout << S[N - 1] << endl; B - Go Straight and Turn Right 現在の向きと座標を持って、愚直にシミュレートします。 C - Yamanote Line Game ABCで初めてインタラクティブ問題解いた気がする...。 どの数が宣言済みかを保持し…

AtCoder Beginner Contest 243

3完。惨敗。 各問題 A - Shampoo 愚直にシミュレートします。一昔前ならB問題でもおかしくないレベルだと思うんですが...。 B - Hit and Blow Nが1000までなので、全探索できます。恥ずかしながらそれに気づくのに遅れてもたつきました。 C - Collision 2 ま…

AtCoder Beginner Contest 242

4完。 各問題 A - T-shirt 単純な算数の問題で、XがA以上なら確率は1、XがAより小さくB以上なら確率はC / (B - A)、それ以下なら確率は0です。 B - Minimize Ordering 問題文を言い換えると「Sを昇順にソートして出力しなさい」となります。文字列をソートで…

AtCoder Regular Contest 136

1完、3:22。 ほぼ2時間椅子を温めているだけのやつ・・・。 各問題 A - A ↔ BB AをすべてBBに変換してから、前から順にBBをAに変換すればよいです。BABB -> BBBBB -> AABみたいな感じで。 B - Triple Shift O(N2)が通りそうなので貪欲にやります。(距離2は…

MC Digital プログラミングコンテスト2022(AtCoder Heuristic Contest 008)

システス後10,185,820,181点で、358位という結果になりました。 一応、正の点数を得た参加者のうちで真ん中より上には入れたようですし、大したことができなかったにもかかわらず水パフォだったようです。 経過 例によって、Scrapboxで思考をまとめていたの…

AtCoder Beginner Contest 241(Sponsored by Panasonic)

ABCEの4完、1WA。 各問題 A - Digit Machine 次のkはa[k]となるので、k=0から始めて3回繰り返します。 B - Pasta ある長さが何本あるか(残っているか)をmapで管理して、Bをひとつひとつチェックしていきます。 C - Connect 6 各マスから、右、下、右上、右…

AtCoder Beginner Contest 240

5完。26:55は自己ベストだったらしい。 各問題 A - Edge Checker 1から順に並んでいるので、差が1なら隣同士です。ただし、例外として1と10も隣同士であることに注意。 B - Count Distinct Integers setに突っ込んでサイズを答えます。Aより楽。 C - Jumping…