Toy と帽子と ADP BE

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

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

4完2WA 各問題 A - Overall Winner 実際に勝利数を数えて比較すればよいです。同数だった場合、最後の文字が 'T' なら最後の勝利が先の青木くんの勝ちで 'A' ならその逆で高橋くんの勝ちです。 コピペミスで1WA...。 B - Fillthe Gaps 愚直に間を埋めていく…

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

4完3WA 各問題 A - N-choice question A + B = C となる C の番号をこたえればよいです。 B - Same Map in the RPG World グリッドは小さいので全探索すればよいです。実装がやや面倒かも。 C - Cross 制約によりバツ印同士が混じりあうことはないので、単に…

AtCoder Beginner Contest 297

5完 各問題 A - Double Click 小さいほうから隣接する2つの差がD以下であるかどうかをチェックして、D以下ならそのときの小さいほうがこたえです。一つも該当するものがなければ -1 です。 B - chess960 各条件は別にチェックできます。 'B' の方はそれぞれ…

AtCoder Regular Contest 159

1完 各問題 A - Copy and Paste Graph i から j への有向辺が存在するなら、Xの作り方から、i から j + mN への有向辺も存在しますし i + mN から j への有向辺も存在します。 というわけで、最初に与えられた行列をもとにワーシャルフロイドで頂点間の距離…

AtCoder Beginner Contest 296

ABCEの4完3WA。 各問題 A - Alternately 前と違うかどうかを順番にチェックしていけばいいです。 B - Chessboard 一つずつチェックしていくだけです。座標の表示の仕方はいろいろありますが、自分はこんな感じで。 for (int i = 0; i < 8; i++) { for (int j…

AtCoder Beginner Contest 295

4完2WA。 各問題 A - Probably English 5つの単語を配列に入れてループを回してチェックするのが効率が良いでしょう。 B - Bombs 各爆弾がどこまでの範囲をカバーするのかをチェックしますが、爆弾の座標と、盤面のすべての座標のマンハッタン距離を全探索す…

AtCoder Beginner Contest 294

5完2WA。 各問題 A - Filter 各Aについて偶数かどうかをチェックして偶数なら出力する奇数ならしない、をします。 B - ASCII Art 各Aについて、0なら . を出力、1以上なら A - 1 + 'A' を出力、をします。 C - Merge Sequences Aの先頭とBの先頭からチェック…

AtCoder Regular Contest 158

1完 各問題 A - +3 +5 +7 まず、3つの数の偶奇がそろっていなければ、一生そろうことはないのでその時点で -1 を出力して終了です。 そうでない場合、3つの数をソートしてから (3, 2, 1) を繰り返します。この繰り返しは2通りで 小さいほうの2つがそろうまで…

AtCoder Beginner Contest 293

4完 各問題 A - Swap Odd and Even 与えられる文字列の長さは偶数であることが保証されているので // n は文字列の長さ for (int i = 0; i < n; i += 2) swap(s[i], s[i + 1]); とするのが早い(速い)かなぁ? B - Call the ID Number 呼ばれたかどうかのフ…

AtCoder Beginner Contest 292

4完1WA 各問題 A - CAPS LOCK 各文字から 'a' - 'A' を引いたものを文字として出力すればよいです。 B - Yellow and Red Card 各選手の取得カード枚数を配列で保持しておくようにして、イエローカードをもらったら +1、レッドカードなら +2 して、判定時には…

AtCoder Beginner Contest 291(Sponsored by TOYOTA SYSTEMS)

5完3WA。 各問題 A - camel Case 一文字ずつチェックして大文字がどこにあるか確認すればよいです。 B - Trimmed Mean X をソートして、X の N+1 番目から N * 4 番目までを合計し、N * 3 で割ればよいです。 C - LRUD Instructions 2 たどった座標を set に…

AtCoder Regular Contest 157

1完1WA。 各問題 A - XXYYX 基本的に |B - C| <= 1 なら条件を満たせます。 ただし、AもBも0ではない場合でBもCも両方0になることはありえません。これに引っかかって1WA。 B - XYYYX XがK以上のときは気合でなんとかなった(はず)。Yができるだけつながる…

Toyota Programming Contest 2023 Spring Qual B(AtCoder Beginner Contest 290)

4完。 各問題 A - Contest Result Aのうち、Bに含まれている番号の点数を足していけばよいです。 B - Qual B Sの o のうち、前からK個はそのまま残して、残りの o を x にします。 C - Max MEX 各数字が出現したかどうかを保存しておき、0 から K-1 まで順番…

AtCoder Regular Contest 156

1完2WA。 各問題 A - Non-Adjacent Flip まず、表のコインが奇数枚のときすべて裏にすることはできません。表表 -> 裏裏で -2、裏裏 -> 表表で +2、表裏 -> 裏表で増減なしなので、どのような i, j を選んでも表の数の偶奇は変化しないからです。 表が0枚の…

Sky株式会社プログラミングコンテスト2023(AtCoder Beginner Contest 289)

4完1WA。 回答にかけた時間 A+C+D < B。そんなことある?! 各問題 A - flip 言われた通りのことをします。 B - レ 問われていることはわかるし、どういうことかもわかるのですが、効率のいい実装が全く思いつかず...。30分くらいかかってしまった。もうだめ…

Toyota Programming Contest 2023 Spring Qual A(AtCoder Beginner Contest 288)

3完 各問題 A - Many A+B Problems A+Bをやっていくだけ。 B - Qualification Contest 先頭K個の文字列をソートして出力。 C - Don’t be cycle N - 連結成分の個数 を超えると、どこかで閉路ができてしまうので、答えは M - (N - 連結成分の個数) (ただし0…

ユニークビジョンプログラミングコンテスト2023 新春 (AtCoder Beginner Contest 287)

4完2WA。 各問題 A - Majority 集計します。Forの数がN/2を上回っていればYesです。 B - Postal Card 全探索すればよいです。 C - Path Graph? 次数が1の頂点が2つと次数が2の頂点がN-2個あり、かつ連結していればYesです。 後者の条件をうっかりして1WA。 D…

AtCoder Regular Contest 154

2完3WA。 各問題 A - Swap Digit A > B のとき A と B を入れ替えて A に小さい数字が集まるようにしたとき 'A*B` は最小になる(気がした)ので、そのとおりやるとACします。 しかし私は、2年以上使っていた巨大な数の剰余を求めるスニペットがバグっており…

ウルシステムズプログラミングコンテスト2023(AtCoder Beginner Contest 286)

4完2WA。 各問題 A - Range Swap A_P と A_R、A_P+1 と A_R+1、... 、A_Q と A_S を入れ替えます。 A問題としてはまあまあ面倒くさいかも。for と if で解けるといわれればそうですが、ちょっと前まではB問題で出ていたレベルでは...。 B - Cat n の次の文字…

AtCoder Beginner Contest 285

4完2WA。 各問題 A - Edge Checker 2 15個しかないので力技でも解けますが、これ完全二分木なので、a * 2 == b or a * 2 + 1 == b なら直接結ばれているとわかります。 B - Longest Uncommon Prefix 愚直にループを回して先頭から確認すればよいです。N=5000…

AtCoder Regular Contest 153

2完2WA1RE。 各問題 A - AABCDDEFE N + 100000 - 1を上位の桁から問題タイトルのABCDEFに当てはめていけばよいです。 -1 するのは、1番目が0だからですが、それをうっかりして変な方法で解いてしまい 1WA。もったいない。 B - Grid Rotations まず、同じ行に…

AtCoder Beginner Contest 284

4完1TLE3RE。 各問題 A - Sequence of Strings 各文字列を配列に入れて後ろから取り出す。 B - Multi Test Cases 奇数の出現数を数えるだけ。 C - Count Connected Component ac-library の dsu を使うだけ。なお連結成分の個数は groups で取れる(外側の)…

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

4完。 各問題 A - Power 計算するだけです。99 が int に収まることは事前に確認しました。 B - First Query Problem 愚直に処理すればよいです。 C - Cash Register 下位の桁からチェックして、0が二つ繋がっているときは00が使えるので押す回数を一つ節約…

HHKBプログラミングコンテスト2022 Winter(AtCoder Beginner Contest 282)

3完、5:13。なにこれ...。 各問題 A - Generalized ABC for (int i = 0; i < n; i++) cout << (char)(i + 'A'); cout << endl; B - Let's Get a Perfect Score 制約が小さいので、三重ループで全探索可能です。 C - String Delimiter 前から処理で、括られ中…

AtCoder Beginner Contest 281

3完...。 各問題 A - Count Down for (int i = n; i >= 0; i--) cout << i << endl; B - Sandwich Number まずSの長さは8文字でないとだめで、その上で1文字目と8文字目が英大文字、 2文字目が 1-9、3文字目から7文字目が 0-9 であることを確認すればよいで…

デンソークリエイトプログラミングコンテスト2022 Winter(AtCoder Beginner Contest 280)

4完1TLE 各問題 A - Pawn on a Grid 二重ループで#の数を数えればよいです。 A問題に二重ループ...。 B - Inverse Prefix Sum A_i = S_i - S_(i-1) です。(S_0 は 0 とする) C - Extra Character 前から一文字ずつチェックして、ずれたところが候補になり…

トヨタシステムズプログラミングコンテスト2022(AtCoder Beginner Contest 279)

4完 各問題 A - wwwvvvvvv 一文字ずつ確認して v なら 1 を、w なら 2 を足していけばよいです。 B - LOOKUP お使いの言語の、文字列検索の関数を使えばよいでしょう。 実は私はc++の文字列検索がよくわかっておらず、二重ループを書いて一文字ずつ確認して…

AtCoder Beginner Contest 278

5完2WA。 各問題 A - Shift 問題文に書かれていることを愚直に実装します。ループがかけるかどうかだけの問題。 B - Misjudge the Time 時刻を1分ずつ進める実装が正しくできるかどうかと、BとCを入れ替える実装がちゃんとできるかどうかの問題。 前者はいい…

大和証券プログラミングコンテスト2022 Autumn (AtCoder Beginner Contest 277)

5完。 各問題 A - ^{-1} P_i == X となる i を答えるだけです。 B - Playing Cards Validation 書かれている条件をプログラムに書き下すだけです。重複チェックは set でやると楽。 C - Ladder Takahashi グラフを作ってBFSをやるだけです。ループにはまらな…

AtCoder Beginner Contest 276

5完。 悪くない出来だったけど勝った気がしない...。 各問題 A - Rightmost 後ろからチェックして、'a' ならその位置を出力して終了、最後まで見つからなければ -1 を出力して終了します。 B - Adjacency List map<int, set<int>> を用意して、mp[A_i].emplace(B_i) と mp[</int,>…