土下座しながら探索中

主に競技プログラミング

2013-01-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の方…

AOJ 1330 : Never Wait for Weights

問題リンク : Never Wait for Weights | Aizu Online Judge解法: Union-Find Tree を使ってグループ分けした 各ノードは色と重さをもつものとする 最初は各ノードの色を自分の配列上でのインデックスと同じにしておく findメソッドでは引数xが属するグルー…

 AOJ 0145 : Cards

問題リンク : Cards | Aizu Online Judge解法: ほとんど連鎖行列積 コスト計算は連鎖行列積と異なるのでそこを変更するだけ 入力を保存した配列を pair p[] とすると、 コストは p[どこから].first*p[中間地点-1].second*p[中間地点].first*p[どこまで].sec…

AOJ 1222 : Telescope

問題リンク : Telescope | Aizu Online Judge問題概要: n個の点が円上に存在する その内m個を選んだ時にできる多角形の面積の最大値を求めよ解法: 動的計画法で解いた dp[始点となる点][最後に使った点][点を選んだ回数]:=その時の最大面積 とした for sp …

AOJ 2249 : Road Construction

問題リンク : Road Construction | Aizu Online Judge解法: 各ノードについて、そのノードに最短路で入ってくるノードのなかで最もコストが小さいものを保存しておいた 最終的な答えはノード2からノードNまでのコストの総和 あるノードについて、入次数が…

AOJ 1225 : e-market

問題リンク : e-market | Aizu Online Judge問題概要: マーケットの情報が次の形式で与えられる(与えられる情報は1000未満)ディーラーの名前 オーダー(sell か buyか)商品名 金額情報が与えられた順番でオーダーされたものとする つまり、最初に与えられ…

突然topcoderが起動できなくなった時に・・・

topcoderで練習しようと思っていつも通りjavawsでコンソールを起動しようとおもったら MalformedURLExceptionn なるエラーがでて起動できなくなっていたこの前までできたのになんでや?と思いつつも解決策を探す、ググり力 そこで見つけた解決方法を残してお…

AOJ 1250 : Leaky Cryptography

問題リンク:Leaky Cryptography | Aizu Online Judge問題概要:(N1^K) + (N2^K) + ・・・ + (N8^K) = (N9^K) となるKを見つけろ ここで、N1,...,N9,Kは32bit integerで16進数解法: 最下位ビットから決定していった 各Nの各桁についてKの同じ桁を0からfまで…

AOJ 1248 : The Balance

AOJ

問題リンク:The Balance | Aizu Online Judge解法: xの値をループで決めて実際に条件を満たすもののなかで最小のものを探した xを決めるとyの値も一意に定まるループの上限はdだと少ないみたいだったので適当に大きくしたコード: int a,b,d; struct P { i…

AOJ 1269 : Sum of Different Primes

問題リンク : Sum of Different Primes | Aizu Online Judge解法: 動的計画法を用いてあらかじめ結果をdp配列に入れておく dp[n][k] := nをk個の異なる素数でつくる時の数 dp[0][0] = 1 (0を0個の異なる素数で作る方法は一通りしかない)疑似コード: for i…

AOJ 1277 : Minimal Backgammon

問題リンク:Minimal Backgammon | Aizu Online Judge解法: 動的計画法で確率を計算した double dp[T][N] := ターンTにマスNにいる確率 とした 初期ではdp[0][0] = 1 とする疑似コード for t 0..T for n 0..N for i 1..6 dp[next_T][next_N] += dp[t][n]*(1…

AOJ 1301 : Malfatti Circles

問題リンク:Malfatti Circles | Aizu Online Judge問題概要: 略解法: 3つの円の半径はそれぞれ以下のサイトにのっている式で求めることが可能http://forumgeom.fau.edu/FG2003volume3/FG200308.pdf2つの円の半径を2分探索をして求める方法もあるみたい2…

AOJ 1204 : Pipeline Scheduling

問題リンク : Pipeline Scheduling | Aizu Online Judge問題概要: 5*n (n これは、1回の処理をする際に使用するユニットの状態を文字で表したものである 入力の要素が'X'となっているならばその時間にそのユニットを使用する '.'はその時間にそのユニットを…

SRM586 Div1 easy

SRM

問題概要:略解法: 各ノードに対して Y[i]を+0.5,0.0,-0.5したx軸と平行な直線を引いて何本と交差するか確かめる 単純にY[i]だけでやると 0 1 0 1 0 1 みたいなときに誤って3と出力してしまう コード::: double err[] = {0.5,0.0,-0.5}; class Piecewis…

 AOJ 0120 : Patisserie

問題リンク:Patisserie | Aizu Online Judge問題概要: 箱の長さとn個のケーキの半径が与えられる(1 与えられた箱のにすべてのケーキを収めることができるか? 大きなケーキの間に小さいケーキがはまり込むことはない解法: ビットDP ケーキの数が最大12…

AOJ 1169 : The Most Powerful Spell

問題リンク:The Most Powerful Spell | Aizu Online Judge問題概要: 辺に文字列をコストとしてもつ有向グラフが与えられる スタートのノード番号とゴールのノード番号が与えられるので最小コストで到達した時のコスト(文字列)を出力せよ 最小コストが存…

SRM499 Div2 hard PalindromeGame

SRM

問題概要: n枚のカードが与えられる (1 n枚のカードにはそれぞれ表に文字列、裏に数字が書いてある(文字列の長さは全て同じ) このn枚のカードの中から適当にカードを選びつなげた時の文字列が回文となっているものの中でそれらのカードの裏の数字の和が最…

SRM205 Div2 hard HexagonalSums

SRM

問題概要: n (1 n を hexagonal number の和で表した時に必要な最小の hexagonal number の数を返せ解法: DPで解いた 最初に n 以下の hexagonal number をベクターとかに入れておく dp[n] := n を作るために必要な最小の hexagonal number の数 として fo…

SRM582 Div2

midだけ・・・mid 問題概要: m人の魔法少女とn体の敵がいる 魔法少女と敵はそれぞれ強さMS[i](i 魔法少女は自分の強さ以下の敵を倒せる 一回の攻撃で倒せる敵は1体のみである 一回攻撃する度に攻撃した魔法少女は疲労が1たまる(初期は疲労0) 魔法少女…

AOJ 1131 : Unit Fraction Partition

問題リンク:Unit Fraction Partition | Aizu Online Judge問題概要:略解法: 枝刈りしつつの再帰void rec(int p,int q,int an,int &cnt,int k,int total); として再帰した p -> 現在の分子 q -> 現在の分母 an -> 現在の回数 cnt -> この問題の答えの数 k -…

AOJ 2002:X-Ray Screening System

問題リンク:X-Ray Screening System | Aizu Online Judge問題概要: 与えられたインプットの中に確実に長方形でないものが存在するかどうか判定せよ解法: SAFEなのであれば少なくとも1つは長方形が存在する(そもそも何も入っていない場合を除く)はずな…

AOJ 2320:Infinity Maze

問題リンク:Infinity Maze | Aizu Online Judge問題概要: H*W(1 迷路の中には1つロボットが置いてある そのロボットをL回動かした後に居るセルとロボットが向いている方向を答えろロボットが壁、または迷路の外にでようとしたときは右に90度回転する …

AOJ 1246:Concert Hall Scheduling

AOJ

問題リンク:Concert Hall Scheduling | Aizu Online Judge問題概要: 自分はコンサートホールを2つ管理している N人の人からそのコンサートホールのどちらか1つを借りたいというリクエストをうけており、 コンサートホールを借りたい期間(開始の日と終わ…

sftpについてちょいメモ

今利用しているパソコン以外のパソコンからファイルをもってくる場合 $ sftp hoge@hoge.hoge.hoge $ cd 持っていきたいファイルのあるディレクトリ $ get もっていきたいファイル今利用しているパソコンから別のパソコンにファイルをもっていきたい場合 $ cd…

AOJ 2028 : Gather on the Clock

AOJ

問題リンク:Gather on the Clock | Aizu Online Judge問題概要: n個(2 i番目のノードを時計回りでみて次のノードの上にかぶせるとき、i番目のノードと次のノードにかかれている値の差だけポイントがはいる ノードが1つになるまでその操作を繰り返した時に…