2020-01-01から1年間の記事一覧

Aizu Competitive Programming Camp 2020 Day 3 感想

ACPC 2020 Day3 コンテストサイト Aizu Online Judge Arena 解説 kaisetu - Google ドライブ

Aizu Competitive Programming Camp 2020 Day 2 感想

ACPC2020 Day2 コンテストサイト Aizu Online Judge Arena解説 ACPC Day2 解説 - Google ドライブ

JOI 2011 本選E JOI国のお祭り事情 解法

atcoder.jp 問題 辺に距離の付いた無向グラフがある。このうち、K個の頂点で祭が開かれている。 グラフと祭の頂点が与えられる。Q個の質問に答えよ。 質問 (s, t) : s から t へのパスで、最も祭の頂点に近づくときの距離を最大化し、その距離を出力せよ

JOI春合宿2020 ビルの飾り付け 4 解法

JOI春合宿2020 ビルの飾り付け 4 atcoder.jp www.ioi-jp.org 問題 2つの数列 A, Bが与えられる。それぞれ長さは2N。 長さ2Nの文字列Sを S_i = 'A' or 'B' とする。 Sに対応して、長さ2Nの数列Cを、S_i = 'A' ならば C_i = A_i、S_i = 'B' ならば C_i = B_i …

Codeforces Microsoft Q# Coding Contest Summer 2020 感想

Microsoft Q# Coding Contest - Summer 2020 に参加してQ#言語を書いて量子コンピュータを学んだ。量子ゲートを通すのはできたが機械学習は結局最後までBiasがどこに影響してくるのか理解できなかった。解いた問題だけ記録しておく。

「7つのツリー」と「1つのツリー」の全単射

元ネタ arxiv.orgツリーを「『リーフ』または『2つのツリーを持つノード』」と定義する。ラベルは無く、ノードの左右は区別する。本記事ではリーフをL、ノードを [x, y] と略記する。Coqによる定義は以下のようになる。 Leaf と Node が T (ツリー) の2つの…

高速なMOD演算 Barrett Reduction, Montgomery 乗算

% を剰余演算子とする。 を2以上の2^31未満の整数とする。 をたくさん求めたいときに、 について前処理をしておけば除算・剰余算を使わずに計算できる場合がある。 とくに、 が定数であるがコンパイル時に決定できない場合に高速化することができる(コンパ…

Nimberの乗法・Sqrt・逆元・二次方程式

Nimber(Grundy数)はその和と積が定義されている。 Nimber - Wikipedia Nimber和 これは単純に言えばxとyのビット毎のXORになっている。 丁寧に言うと次の性質がある。 Nimber和の性質1: のときこれらのNimber和は普通の非負整数の和(正確には順序数の和)…

Kotlin error: no set method providing array access

Kotlin の error: no set method providing array access は明示的にキャストして型を合わせると解消できる fun main(argv: Array<String>) { val d = LongArray(10) d[0] += 1 // error: no set method providing array access d[0] += 1L // good d[0] = d[0] + 1 </string>…

切片昇順で構築するConvex Hull Trick

問題 最初、 を空集合とする。次の2種類の命令を大量に与えられるので順に実行し、Find 命令の場合は値を出力せよ Add(a, b): に ペア を追加する Find(x): を求める オンライン問題、つまりクエリを先読みしない問題とする。 a, b, x は整数 -100000000 こ…

PAST アルゴリズム実技検定 感想

2019/12/14 にPASTアルゴリズム実技検定を受けた。2週間経って解法が解禁されたので感想を書く。 感想 難易度はサンプル問題のものとほぼ同じ。個人的には atcoder beginner contest の200~600がそれぞれ3問の15問に感じられた。 値段は8800円。問題のクオリ…