足跡-sokuseki-

りかの日進月歩の記録

AOJ

C++のcomplexで円と線分の交差判定

ある円Cと線分Sの交差判定をします。 定義 円と線分(ここでは直線として管理します)の定義は↓ typedef complex<double> P; struct L : public vector<P> { L(const P &a, const P &b) { push_back(a); push_back(b); } L(){;} }; struct C { P c;double r; C(const P </p></double>…

AOJ2333 僕の友達は小さい

AOJ-ICPC 500 自力AC!!!!My friends are small | Aizu Online Judge 問題概要 人の友達がいて、 番目の友達の重さは である。 この友達を好きな順で選択し、選択した友達の重さの総和が を超えないようにしたとき、選択した友達の組み合わせは何通りある…

AOJ 2642 Dinner

Dinner | Aizu Online Judge AOJ-ICPC 550点…? 問題概要 日間の夕食を食堂か自炊のどちらかで済ませる。 日目に食堂で夕食をとると幸福度が 得られる。 各日に自炊をすると得られる幸福度は、 (自炊をした時点での自炊パワー) である。 自炊パワーは、初期…

AOJ0310 枠

枠 | Aizu Online Judgeこの高速化テクは典型らしいです。 問題 のグリッドがあり、各マスに数が書かれている。 このグリッドに太さ1マス分の長方形の枠をのせ、枠が覆っているマスの数の総和を最大化する。 ただし、枠は や や のように、中央に穴が空いて…

AOJ2321 Butterfly

Butterfly | Aizu Online Judge 問題概要 個の用事があり、 個目の用事は時間が 区間拘束され、 個目の区間は 時から 時である。また 個目の用事をすると満足度が 得られる。 時間がかぶらないように行う用事を決めるとき、得られる満足度の最大値を求めよ。…

AOJ1336 The Last Ant

The Last Ant | Aizu Online Judge 問題概要 長さ cmのトンネルに蟻が 匹いる。最初、蟻 はトンネルの左端から cmの場所に向き の状態でいる。トンネルは広い場所と狭い場所があり、狭い場所はトンネルの端から1cmおきのところにある。トンネルのある場所で…

AOJ1237 Shredding Company

Shredding Company | Aizu Online Judge 問題概要 整数 と数字のみからなる文字列 が与えられる。文字列 をいくつかの箇所で分割し、分割後の数の総和が 以下になるようにするとき、総和の最大値とそのときの分割の仕方を答えよ。なお、分割後の数の総和が …

AOJ1325 Ginkgo Numbers

Ginkgo Numbers | Aizu Online Judge 問題概要 Ginkgo Numbersは整数 のペア です。 Ginkgo Numbersの掛け算は・ = で定義されます。 ・ = となるとき、はの約数です。どんなGinkgo number にも少なくとも8つの約数が存在し、それらは , , , , , , , です。 …

AOJ2243 Step Step Evolution

Step Step Evolution | Aizu Online Judge 問題概要 3*3のマスを左右どちらかの足で順番に踏むゲームをする。与えられる指示に従って左右の足で交互にマスを踏んでいきたいが、右足よりも右側のマスを左足で踏んだり、左足よりも左側のマスを右足で踏んだり…

AOJ1316 The Sorcerer's Donut

The Sorcerer's Donut | Aizu Online Judge 問題概要 ドーナツ状の物体の表面に文字列が書かれている。ある文字から8方向に移動し続けてできる文字列のうち、2度以上出現する文字列で長さが最長のものを答えよ。複数存在する場合は辞書順最小のものを答えよ…

AOJ1345 Bit String Reordering

Bit String Reordering | Aizu Online Judge 問題概要 長さ のビット列 を、となりあう2つのビットをswapすることを繰り返してランレングス符号が であるようなビット列に変換するときの最小のswap回数を求めよ。 ランレングス符号は0または1が連続する最大…

AOJ1286 Expected Allowance

Expected Allowance | Aizu Online Judge 問題概要 個の 面サイコロを振って出た目の総和から を引いたものの期待値を求めてください。ただし、出た目の総和から を引いたものが0以下になるときは1として計算します。 制約 解法 制約を睨むと目の出方を全探…

AOJ1277 Minimal Backgammon

Minimal Backgammon | Aizu Online Judge 問題概要 0から までのマスがあるすごろくをします。マスには何も書いていないマス、止まると1ターン休みになるマス、止まるとスタートのマスまで戻るマスがあります。マス0がスタートのマス、マス がゴールのマスで…

AOJ1368 Quality of Check Digits

Quality of Check Digits | Aizu Online Judge 問題概要 0000~9999の4桁の数の後ろにチェックディジットを1つつけて5桁の数を作る。チェックディジット は、4桁の数の数字を上から としたとき、 と定義される。ここで は与えられた表の 行 列目の数字を指す…

AOJ2340 Carpenters' Language

Carpenters' Language | Aizu Online Judge 問題概要 括弧列がvalidであるとは、文脈自由文法で以下のように定義される。 S -> SS | (S) | )S( | εあなたは最初、空の括弧列Sを持っている。 回のクエリが与えられる。 番目のクエリで が与えられるので、Sの …

AOJ2165 Strange String Manipulation

Strange String Manipulation | Aizu Online Judge 問題概要 線形合同法を使って擬似乱数を生成します。線形合同法は mod で計算します。ここで は定数で、この問題では 、です。いま、文字列 を、乱数列 を使って別の文字列 に変換したいです。文字列 は mo…

AOJ1249 Make a Sequence

Make a Sequence | Aizu Online Judge 問題概要 2人のプレイヤーが白と黒の石を使って交互にゲームをプレイする。黒が先手。 * 本のペグ(杭)があり、それぞれ 個までボールを重ねることができる。 ゲーム開始時にはどのペグにもボールはない。ターンになると…

AOJ1346 Miscalculation

Miscalculation | Aizu Online Judge 問題概要 1行目に0~9の数字, +, *の文字からなる数式が与えられます。この数式は奇数文字目は数字、偶数文字目は演算子(+または*)です。数式の長さは奇数で、最大17文字です。 数式の計算方法は 乗算(*)を加算(+)より優…

AOJ1285 Grey Area

Grey Area | Aizu Online Judge 問題概要 個のデータからヒストグラムを作ります。 それぞれのヒストグラムの棒の幅は で、棒の高さは、ヒストグラムの棒の長さの最大値を1としたときの割合で定義されます。 ヒストグラムの棒はそれぞれ色の濃さが異なり、ヒ…

AOJ 2748 夏合宿の朝は早い

夏合宿の朝は早い | Aizu Online Judge 問題概要 人それぞれの寝坊する確率と、連絡先を知っている人が与えられる。 起きた人が連絡先を知っている人すべてにモーニングコールをするとき、全員が起きられる確率を求めよ。 解法 誰にも起こしてもらえない人(…