Online judge
リポジトリ Sport Meet(AOJ No.0161) nチームのレースの成績データの形式で与えられる。 id:チーム名 番目のレースのタイム分、秒 4つのレースのタイム合計で順位を決め優勝、準優勝、ブービー賞のチーム名を答える。 制約 タイム合計が同一にはならないよ…
リポジトリ Russian Dolls(AOJ No.0157) マトリョーシカのデータ系列系列が与えられる。 もし, ならマトリョーシカをマトリョーシカの中に入れることができる。 最大何個のマトリョーシカからなるマトリョーシカができるかを答える。 制約 アルゴリズム1 hか…
リポジトリ Triangle and Circle(AOJ No.0153) 1つの三角形(頂点座標×3)と1つの円(中心座標+半径)が与えられたときの位置関係を↓で求める。 円が三角形に含まれる場合 a 三角形が円に含まれる場合 b それ以外の場合で、共通部分がある場合には c 共通部分…
リポジトリ Twin Prime(AOJ No.0150) nが与えられて、とは素数となるを求める 制約 コード その場で求めても十分間に合う import java.util.*; public class aoj0150 { static final Scanner stdin = new Scanner(System.in); static final int N = 10001; p…
リポジトリ Lupin The 4th(AOJ No.0146) 屋敷からmの距離の蔵iに1個20kgの宝が個ある。 蔵は全て、屋敷から同じ方向に向かって一直線上にある。 蔵にある宝を拾いながら、全ての蔵をまわる。 始点と終点はどこでも良い。 宝をkg持っているときの移動速度はm…
リポジトリ Spiral Pattern(AOJ No.0141) nが与えられて、n×nの中にぐるぐる模様を書く。 ぐるぐる模様は、左下から始まって1行または1列分開けて中心に向かって'#'で描かれる。↑のリンク参照 アルゴリズム 進行方向とその4近傍(自分がいる位置を除く)を…
リポジトリ Rotation of a Pattern(AOJ No.0133) 8×8のパターンを右回転 コード import java.util.*; public class aoj0133 { static final Scanner stdin = new Scanner(System.in); static final char[][][] pat = new char[4][8][8]; public static void …
リポジトリ Jigsaw Puzzle(AOJ No.0132) のジグソーパズル. ジグソーピースがn個与えられる。 プレイヤーがいくつかのジグソーピースを選ぶので、そのピースでジグソーパズルを完成できるかどうかを答える。 ジグソーピースは90度ずつ回転できる。 制約 アル…
リポジトリ Doctor's Strange Particles(AOJ No.0131) のライツアウト アルゴリズム 一番上の行のon, offが決まれば、次の行は、上が1の所をonにしなければならないので、それ以降は一意に決まる。 一番下まで繰り返したとき、最後の行がすべて0になっていれ…
リポジトリ Seven Puzzle(AOJ No.0121) のパズル、0〜7のパネルが与えられて、 0のパネルを上下左右のどれかのパネルと交換して、 0 1 2 3 4 5 6 7 の状態にするゲーム。 与えられた状態から、上の最終状態にするまでの最小の交換回数を求める。 ただし、ゲ…
リポジトリ Patisserie(AOJ No.0120) 半径の丸いロールケーキが個ある()。 これを長さの箱に入れることができるかを答える。 ただし、ロールケーキは箱の底面に接しておき、重ねておくことができない。 また、ロールケーキとロールケーキの間の隙間に小さい…
リポジトリ Rectangular Searching(AOJ No.0116) Square Searching(AOJ No.0092) と同じような問題だが、縦横がではなく、(H,W)で与えられ、 求めるのは、最大の正方形ではなく、最大の長方形。 制約 アルゴリズム http://www.ipsj.or.jp/07editj/promenade/…
リポジトリ Doctor's Memorable Codes(AOJ No.0111) 文字→固定長01系列, 可変長(0〜3)01系列→文字列の変換表が与えられて、それに従って、暗号文字列をデコードする。 可変長10系列→文字列の変換表に含まれないものがあれば、残りは切り捨てる。 コード 可変…
リポジトリ Sale Result(AOJ No.0100) i(社員id),p(販売商品価格),q(販売数)のレコードがn個与えられたとき、 合計売り上げが1000000以上の社員idを答える。 一人も売り上げが1000000以上の人がいなかったらNAと答える。 制約 コード なんかこの問題正解率が…
リポジトリ Square Searching(AOJ No.0092) の'.'と'*'から成るマップが与えられて、 '.'だけを含む正方形の辺の長さの最大値を求める。 制約 アルゴリズム dot[i+1][j+1] = 四角形map[0][0]〜map[i][j]の'.'の数 とするとmap[i-k][j-k]を左下の頂点とする一…
ジャッジできないの Blur(AOJ No.0091) Calculation of Area(AOJ No.0094) Surf Smelt Fishing Contest(AOJ No.0095) Sum of 4 Integers II(AOJ No.0096) Sum of Integers II(AOJ No.0097) Star Sign and Birthday(AOJ No.0098) Score Distribution(AOJ No.0…
リポジトリ Overlaps of Seals(AOJ No.0090) n個の半径1の円の座標が与えられ、オーバラップしている円の数の最大値を求める。 接している場合も接点の部分は重なっているとみなす。 制約 アルゴリズム 2つの円を選んで、その交点を求め、交点から半径1以内…
リポジトリ A Symmetric Point(AOJ No.0081) 2点を通る直線について線対称な点の像を求める。 制約 は互いに異なる は対称軸上にはない アルゴリズム 対称軸//y軸, すなわち、の場合、求める像は 同様に、の場合、求める像は それ以外の場合、まず、対称軸…
リポジトリ Videotape(AOJ No.0074) 標準録画で 120 分のビデオテープがある。テープを完全に巻き戻した状態でビデオデッキのカウンタを 00:00:00 にし、標準録画モードで録画したときのカウンタ値(時、分、秒)が与えられ、残り録画可能時間と、3倍録画モー…
リポジトリ Carden Lantern(AOJ No.0072) 無向グラフとの長さが与えられる。 全ての辺には100メートルごとに、1本の灯篭を立てる。 連結を維持したまま、辺を除いたときの、最小の灯篭の数を求める。 制約 の長さ アルゴリズム 要するに最小全域木の合計コ…
リポジトリ Bombs Chain(AOJ No.0071) ボンバーマン、8×8、障害物なし、火力十字3. ボムの位置、爆発するボムの位置が与えられて、爆発後のマップの状況を求める。 intの2次元座標ならjava.awt.Pointを使えばいいのね。 コード import java.util.*; imp…
リポジトリ Rank Checker(AOJ No.0061) 整理番号と得点の系列が与えられ、 ある整理番号の順位を答える。 アルゴリズム 整理番号→得点のマッピングを入力し、得点→順位のマッピングを作って答える。 得点→順位のマッピングは、得点を高い順にソートして作る…
Differential II(AOJ No.0051) 8個の数字(0〜9)が与えられて、並び替えてできた数字の最大値と最小値の差を求める。 並び替えたとき0から始まってもよい。 コード char[]にして、ソート→StringBuilder(reverse)→parseIntで最小値と最大値を求めた import jav…
リポジトリ Expression(AOJ No.0041) 4つの整数が与えられ、 = 10 となる式を1つ答える(ない場合は0を返す)。 ただし、は入れ替えてもよく、()を好きな位置に挿入してもよい。 アルゴリズム の順列(4!=24)と、の重複順列()と括弧の位置(5)を組み合わせて、 …
リポジトリ Is it Convex?(AOJ No.0035) 多角形の頂点が与えられて、 多角形ABCDが凸多角形かどうかを求める。 ただし、1 直線上に3 つ以上の点が並ばないよう点A,B,C,Dが与えられるものとする。 アルゴリズム の値を使って、次の点が反時計回りか、時計回り…
リポジトリ A Figure on Surface(AOJ No.0036) 8×8の0,1パターンが与えられる。 その中で、 A ■■ ■■ B ■ ■ ■ ■ C ■■■■ D ■ ■■ ■ E ■■ ■■ F ■ ■■ ■ G ■■ ■■ のどれかのパターンが1つだけ埋め込まれている(■->1, otherwise->0) 与えられるパターンにはA〜G以外…
リポジトリ Mode Value(AOJ No.0028) 1〜100の整数がn個与えられて、その最頻値(mode)を答える。 最頻値が複数ある場合は、昇順で出力する。 制約 n≦100 コード C++みたいにt[key]++みたいにできんのか? 整数が1〜100なんで、普通の配列で頻度表を作ってもい…
リポジトリ What day is today?(AOJ No.0027) leap year 2004 年 1 月 1 日は木曜日. 2004 年 m 月 d 日は何曜日? アルゴリズム javaならGregorianCalendarが使うだけ。 C++ならboost::date_timeライブラリのboost::gregorianで日にち計算できる。 つーか、2…
Gather the Maps!(AOJ No.2011) 子孫の数nと子孫のフリーな日の予定表が与えられる。 はじめ、各人は、個人の地図を持っている。 各人は、フリーな日にフリーな人にあって、持っている地図を渡すことができる。 子孫の内のだれかがn枚の地図を所有するのに(…
The Secret Number(PKU No.2030) 各要素がアルファベットか1桁の数字のH×W行列Mが与えられる。 任意の位置の数値要素(i,j)から(i+1,j)あるいは(i,j+1)の数値要素をたどっていってできる数値の内、最大の数値を求める。 制約 H+W アルゴリズム 深さ優先だとな…