土下座しながら探索中

主に競技プログラミング

2013-09-01から1ヶ月間の記事一覧

1001 : Binary Tree Intersection And Union

問題リンク:Binary Tree Intersection And Union | Aizu Online Judge解法: 実際に2つ木を作って指定された処理を行った 配列で2分木を実装するとノードが最大100個なので配列内に収まらない なのでポインタを使って実装した struct Tree { bool chil…

AOJ 2447 : A Two Floors Dungeon

AOJ

問題リンク : A Two Floors Dungeon | Aizu Online Judge問題概要: H*Wのグリッドが与えられる 自分は上下左右に移動することができる もし今いる場所が階段なら階段を利用して階を移動することもできる スイッチがあるマスにいるならばスイッチを押すこと…

AOJ 1320 : City Merger

問題リンク:City Merger | Aizu Online Judge 解法: 巡回セールスマン問題みたいであったcost[i][j] := 文字列jを文字列iの後ろにつなげてできる文字列の長さから文字列iの長さを引いた値dp[1 for i 0..n // 初期化 これ以外はinf dp[1<<i][i] = s[i].length() //s[i] は 文字列i for S i 0..(1<<n)-1 for from 0..n //状態Sでfromからtoへ行く if !((S>>from) & 1) //まだ</i][i]>…

AOJ 2251 : Merry Christmas

問題リンク:Merry Christmas | Aizu Online Judge解法: 二部グラフにおとしてマッチングをした 二部グラフにする際にリクエストをノードとした エッジをつなぐ前に、家と家の最短距離をフロイドワーシャルで求め、 (リクエストiが終わる時間)+(リクエストi…

UVa 437 : The Tower of Babylon

問題リンク:The Tower of Babylon問題概要: x*y*zの長方形がn個(nは30以下)与えられる 以下の条件を満たすとき長方形を別の長方形に載せることができる 条件:長方形の上にのせる長方形の横と縦の長さは下の長方形の横と縦の長さ未満でないといけないこ…

AOJ 0037 : Path on a Grid

AOJ

問題リンク:格子状の経路 | Aizu Online Judge解法: 問題で言われている通りに書く 自分は最初にcharの2次元配列に壁や床を書き、スタート地点から人を動かしていった dx = {+1,+0,-1,+0}; dy = {+0,+1,+0,-1}; という配列を用意して、最初の時点では0の方…