2015-03-01から1ヶ月間の記事一覧

Indeedなう予選A D.パズル

問題 H*Wのスライドパズルの状態が与えられる。 左上から 1,2,3,4,5 6,7,8,9,10 ... のように数字を埋めて、右下が0のようにするために必要な最小スライド数を答える。2 最小スライド回数は24回以下が保障される 考え方 両側bfs。 24回以下なので、ゴール状…

SRM652 div1 250

問題 整数Nが与えられる。 1〜Nまでを並び替えて得られる任意の順列pについて、i回目の数値をf(i)とすると、 ・f(1)=p[1] ・f(m)=p[f(m-1)] (m>=2) で定義される操作をx回行った値が1になるようしたい(すなわちf(x)=1)。 このようなxのうち、最小となるxをmo…

1167. Pollock's conjecture

問題 n番目の正四面体数は、n*(n+1)*(n+2)/6に等しい。 Nが与えられたとき、そのNを複数の正四面体数の和で表現したい。(同じ正四面体数を何度も使ってよい) 組み合わせる正四面体数が最小になるようにNを表現したときの組み合わせ数を求めよ。 また、組み合…

SRM651 div1 500

問題 無限に大きなマスのボードが与えられる。 M匹のきつねがいるマスの座標が与えられる。 集まるとは、すべてのきつねがいるマスが隣接しているような状態を指す。 このM匹が集まりたいとき、全員の移動距離の最小値を答える。M -10^9 考え方 きつねのx座…

SRM651 div1 250

問題 W*Hマスのボードが与えられる。 各マスは、空か、スタート位置か、壁か、の三通りが与えられている。 今、ロボットがスタート地点から上下左右の組み合わせのコマンドによって動くが、以下のような挙動をする。 ・コマンドに従い動いて、動く先が空マス…

Codeforces 519E

問題 N頂点からなる、辺の重みが1の連結な木が与えられる。 M個のA,Bが与えられ、「頂点AとBから同じ距離に位置する頂点の個数」をそれぞれ返す。N M 考え方 任意の木では、個数の数え上げが難しいので、頂点1をルートとする根付き木にしておく。 考察すると…

Codeforces 519D

問題 a〜zの26個のアルファベットの重みが与えられる。 ある文字列が与えられたとき、長さ1以上の部分文字列で「両端のアルファベットが同じ」かつ「両端を除いたアルファベットの重みの和が0」であるようなものがいくつあるか? 10^5 文字列の長さ 考え方 …

Codeforces 519C

問題 今、N人のプロとM人の初心者がいる。 3人でチームを作る際、(プロ、プロ、初心者)か(プロ、初心者、初心者)であるように作らなければならない。 何チーム作れるか?0 考え方 それぞれ(プロ、プロ、初心者)がAチーム、(プロ、初心者、初心者)がBチームで…

Codeforces 519B

問題 n個の数字が与えられ、それからどこれか1つの数字を除いたn-1個の数字、さらに、それからどれか1つの数字を除いたn-2個の数字が与えられる。 それぞれ、なんの数字が抜かれたか?を返す。 考え方 n個の数字の合計値を求めておけば、n-1個の数字の合計値…

Codeforces 519A

問題 いくつかのコマが配置されたチェス盤が与えられる。 各コマには重みが与えられており、各プレイヤーごとの重みの合計値が高いほうのプレイヤー名(White/Black)を返す。同点の場合はDrawを返す。 考え方 数えるだけ。 が、入力をよく見ると、knightの場…