土日(118-9)に開催された CODE FESTIVAL2014 本戦に参加しました。

予選Bで3完しかできなかったので、 参加はムリだろうと思っていたのですが、なぜか本戦に出場できてしまいました。 3完でも行けなかった人がいるみたいなので、本当に運ですね。

順位的には残念な感じになってしまって悔しかったですが、豪華な企画が盛りだくさんで(リンク先のタイムテーブルを参照)、 chokudaiさんの生コーディングが見れたり、iwiwiさんのサインが貰えたり、美味しいご飯が食べれて良かったです。 また、本戦上位5人によるエキシビジョンマッチを観戦しましたが、実況が分かりやすくて私のような初心者でも十分に楽しむことができました。 あと、なぜかDDRや太鼓の達人の筐体が用意されていて、遊び放題でした。

良いイベントだと思うので、リクルートさんには来年以降もやって欲しいと思います。

Read more


Uva Online Judgeで解いた問題を適当に解説します。

3ということで、前回前々回の続きです。

10018 Reverse and Add

10018 - Reverse and Add

$n = 入力 + reverse(入力)$ を計算、回文だったらその値を返す。 回分でなければ、$ 入力 = n $ として回文になるまえ繰り返す問題だった。

ここで言う回分というのは、12321のような整数のこと。

問題文に "palindrome that is not greater than 4,294,967,295. " とあったので、BigNumber を使う必要は特に無く、unsigned long long int で対応できた。

ごく普通に、回文を返す関数回分かどうかを判定する関数を実装して、問題を解いた。

Read more


Uva Online Judgeで解いた問題を適当に解説します。

2ということで、前回の続きです。

Where’s Waldorf?

問題

10010 - Where’s Waldorf?

問題
MxNの広さの2次元の行列から単語を検索する問題。
単語は、上、下、左、右、右上、左上、右下、左下の8通りの並び方がある。(縦読みや横読み的な)
また、大文字と小文字は区別しない。
入力
書くのが面倒なので省略。
出力
見つけた単語の1文字目の座標

解説

特にアルゴリズムの工夫のしようもないので、総当りで解く。 ちょっとした工夫としては、1文字目を見つけた次に最後の文字から照合すると、 文字の座標的にありえないケースを早々に飛ばすことができる。

大文字と小文字を区別しないので、入力を読み取るときにどちらかに統一する。

Read more


Uva Online Judgeで解いた問題を適当に解説します。

The 3n+1 Problem

問題

100 - The 3n + 1 problem

問題
ある整数nに対して、問題文のように数列を1になるまで計算する。
nを iからjの 範囲にして、数列を計算した時、
1で終わるまでの数列のサイクル数が最大になるときのサイクル数を求める。
入力
1つのテストケースに対して、次の1行の入力。
i, j
出力
i, j, 最大のサイクル数

Read more