[AOJ] No. 0409 床
タイルの増加数に着目すると、\( 1^2, 2^2, 3^2, 5^2, 8^2, \cdots \) と増加しているので、\( x \) 方向と \( y \) 方向にタイルの辺がフィボナッチ数ずつ増えているこ ...
[yukicoder] No. 0939 and or
\( X, Y \) を \( 2 \) 進数で表現したときの \( i \) 番目のビットを \( x_i, y_i \) とします。同様に \( A, B \) についても \( a_i, b_i \) とします。条件より ...
[AOJ] No. 0556 タイル (Tile)
上下左右対称であることを利用して解きます。\( 1 \leq x \leq \lceil \dfrac{N}{2} \rceil \) かつ \( 1 \leq y \leq \lceil \dfrac{N}{2} \rcei ...
[AtCoder] ABC 145 D – Knight
マス \( i, j \) から \( (i + 1, j + 2) \) に移動するような動き方の回数を \( a \), マス \( i, j \) から \( (i + 2, j + 1) \) に移動するような動き方の ...
[AOJ] No. 0594 超都観光 (Super Metropolis)
東南方向の斜めの道が無ければ、\( 2 \) 点間の最短距離は、
\
となります。
南西方向観光スポットが南西方向にある場合、東南方向の道を通る必要がないので、最短距離は、
\
[AtCoder] AGC 040 A – ><
条件を満たす整数列を作ります。まず初めに、\( a_i = 0 \ ( 1 \leq i \leq N) \) とします。次に、文字列の先頭から末尾に向かって、\( S_i = \) ‘<‘ なら ...
[AtCoder] 第二回全国統一プログラミング王決定戦予選 B – Counting of Trees
一見難しそうに見えますが、\( 300 \) 点の問題なので解法は簡単であることが予想できます。
実現不可能な整数列頂点 \( 1 \) からの距離について頂点 \( 1 \) からの距離が与えられるので、 ...
[AtCoder] ABC 144 D – Water Bottle
水筒を傾けた時に入る水の最大値を考えます。傾けた時の角度を \( \theta \) とします。このときの水筒の容量を \( V (\theta)\) とします。そして、\( V (\theta) = x \) を満たす \( ...
[AtCoder] ABC 144 C – Walk on Multiplication Table
C – Walk on Multiplication Table
方針\( N = x \times y \) を満たす正の整数 \( x, y\ (x \leq y) \) がマスの候補となるので、\( ...
[AtCoder] ABC 142 D – Disjoint Set of Common Divisors
\( A \) と \( B \) の公約数を考えるので、\( A \) と \( B \) の最大公約数を考えます。最大公約数を素因数の数が求める答えとなります。
コード#include <bits/stdc++ ...