キャディプログラミングコンテスト2021(AtCoder Beginner Contest 193)

F はすぐ解けたんだけど,E で詰まりに詰まった... A - Discount が答え. B - Play Snuke が答え. 1 行で書いてみた (Python). print(min(p for _, p, _ in L) if (L := [*filter(lambda t: t[0] < t[2], ([*map(int, input().split())] for _ in range(i…

SOMPO HD プログラミングコンテスト2021(AtCoder Beginner Contest 192)

43:47 + 0:00 全完で全体 46 位,日本人 39 位でした.賞金ワンチャンないかな...? A - Star コイン 100 枚で 1 up するアレかな? が答え. B - uNrEaDaBlE sTrInG char[] s = sc.nextChars(); boolean y = true; for (int i = 0; i < s.length; i += 2) {…

AtCoder Regular Contest 006 D - アルファベット探し

特に学び的なことはなかったけど,かなり面倒そうに見える問題が楽に解けたので. 問題は ↓ から. atcoder.jp 解法 各 # マスから上下左右 + 斜め 4 方向の合計 8 方向に存在する # マスへ辺を張ったグラフを考えると,A, B, C はすべて連結であることに着…

重複数珠順列

ほぼ自分用のメモなので色々雑かも. 問題 問題文 円周上に 個の玉が等間隔で並んでおり,それぞれの玉に色を塗ることを考える.色は の 色があり,複数の玉を同じ色で塗ってもよいし,使われない色があってもよい.玉に色を塗る方法の数を で求めよ.ただし…

AtCoder Beginner Contest 190

2 連続橙 perf で黄色復帰!!めでたい. A - Very Very Primitive Game なら高橋君の勝ち なら青木君の勝ち なら のとき青木君, のとき高橋君の勝ち int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); if (a > b) { pw.println("Takahas…

AtCoder Beginner Contest 189

A - Slot 略 char[] c = sc.nextChars(); if (c[0] == c[1] && c[1] == c[2]) { pw.println("Won"); } else { pw.println("Lost"); } B - Alcoholic おなじみの誤差回避問題. かどうかを各 に対して判定したいが,和の各項は整数とは限らないため,このまま…

AtCoder Beginner Contest 187

A - Large Digits 文字列として受け取って和をとったけど, 普通にやった方が良かったかも. B - Gentle Pairs 浮動小数点数 (double など) を使うと誤差が怖いので, 整数型演算だけで判定したい. 二点 , を結ぶ直線の傾きは, なので, かどうかが判定できれば …

第五回アルゴリズム実技検定 (バーチャル参加)

O は解法は正しかったけど定数倍に敗北して 10 分間に合わず. ただ, 直接の敗因は間違いなく SASUKE が面白かったせい (え?) A - ○✕ゲーム S.contains("ooo"), S.contains("xxx") をそれぞれ見る (同時に成立することはない). B - 上書き ArrayList<Character> で処理</character>…

AtCoder Beginner Contest 185

MathJax = { chtml: { matchFontHeight: false }, tex: { inlineMath: [['$', '$']] } }; A - ABC Preparation $\min\{A_1,A_2,A_3,A_4\}$ を計算すれば OK. こういうときに int ans = Math.min(Math.min(Math.min(A[0], A[1]), A[2]), A[3]); みたいに書く…

任意 mod で二項係数を列挙する (2)

素数とは限らない法 M に対して, 二項係数 C(N, 0), ..., C(N, N) を O(NlogM/loglogM) で列挙します.

任意 mod で二項係数を列挙する

MathJax = {tex: {inlineMath: [['$', '$'], ['\\(', '\\)']]}}; (追記 2020/11/30) :計算量解析がより厳密になりました. 以前は $\displaystyle O\left(\frac{N(\log N)^2}{\log\log N}\right)$ と書いていましたが, $O(N(\log N)(\log\log N))$ であること…

第四回 アルゴリズム実技検定 (バーチャル参加) [L-O]

MathJax = { tex: {inlineMath: [['$', '$'], ['\(', '\)']]} }; AtCoder による 第四回 アルゴリズム実技検定 の問題を解きました. L - マンションの改築 問題文 難しい. 偶数番目を奇数番目に分けて, 差分を imos で管理する. $A_1=H_1$, $A_i=H _ i-H _ {…

第四回 アルゴリズム実技検定 (バーチャル参加) [G-K]

MathJax = { tex: {inlineMath: [['$', '$'], ['\(', '\)']]} }; AtCoder による 第四回 アルゴリズム実技検定 の問題を解きました. G - 村整備 問題文 が小さいので, 全ての '#' に対して愚直にシミュレーションしても十分間に合う. BFS をしてもよかったが…

第四回 アルゴリズム実技検定 (バーチャル参加) [A-F]

AtCoder による 第四回 アルゴリズム実技検定 の問題を解きました. A - 中央値 問題文 ソートして , , と一致判定するのが楽? public static void solve(ExtendedScanner sc, FastPrintStream pw) { int a = sc.nextInt(); int b = sc.nextInt(); int c = sc…

ACL Begginer Contest F - Heights and Pairs 解説

MathJax = { tex: {inlineMath: [['$', '$'], ['\(', '\)']]} }; 解説する問題を以下に引用しておきます ( 引用元 : Heights and Pairs ) 問題文 $2N$ 人の人 ( 番から 番まで ) がいます。 人 $i$ の身長は $h_i$ です。 以下の条件を満たすように、$N$ 個…