arrows blog

解いた問題などを適当に書いていきます。

やるだけ

AOJ 0011 Drawing Lots

問題概要 w個の縦棒、n個の横棒で構成されるあみだくじがある。 横棒iは、aiとbiをつなぐ。 横棒は、上に存在するものから与えられる。 制約 w ≤ 30 n ≤ 30 解法 まず、始めに横棒が1本もない場合を考える。 その場合、i番目の縦棒から始めるとi番目の縦棒へ…

AOJ 0002 Digit Number

問題概要 整数a, bが与えられる。 a + bの桁数を出力せよ。 制約 0 ≤ a, b ≤ 106 データセットの数 ≤ 200 解法 まず、a + bを求める。この結果をcとする。 cについて、桁数を求めるためには、0になるまで、何回10で割れるか(切り捨て)を確かめれば良い。例え…

AOJ 0000 QQ

問題概要 九九を出力せよ。 注意点 掛ける記号(×)は、小文字のx(エックス)を使用すること。 解法 そのまま全てを出力しても良いが、 forループを使用することによって簡単に実装できる。 コード #include <iostream> using namespace std; int main() { for (int i = 1</iostream>…

AOJ 1235 - Life Line

問題概要 N段のピラミッド構造が入力として与えられ、これは下図のようなノードとエッジの関係がある。 各ノードには0〜9の数字が書かれている。このとき、入力として与えられた値Cを任意の値が0のノードに上書きしたとき、次のルールに従い、得られる得点の…

AOJ 0037 - Path on a Grid

問題概要 4×4の二次元グリッドがありプレイヤーは最初(0,0)にいる。そしてプレイヤーは壁に右手をついて歩くので元の位置に戻ってくるまでの経路を出力せよ。 解法 シミュレーションする。 入力が特殊なので工夫しないといけない。 感想 入力には対応できて…

AOJ 0069 - Drawing Lots II

問題概要 W本の縦棒、H段のあみだくじの状態とスタートとゴールが与えられる。与えられた状態でスタートからゴールへ到達できる場合は0、d段目のjからj+1へ横棒を一つ加えることでスタートからゴールへ到達できる場合はdとj、どのように横棒を加えても到達で…