AOJ

AOJ-ICPC-favorite

好みが普通すぎて面白く無いかもしれません 現在の難易度でsortします・5002333 My friends are small My friends are small | Aizu Online Judge・6002439 Hakone Hakone | Aizu Online Judge2336 Spring Tiles Spring Tiles | Aizu Online Judge2256 Divid…

AOJ2453 Presentation

AOJ

問題: Presentation | Aizu Online Judge概要: 二分木をコピペして作る 解法: 面白かったけど構文解析パート必要ない。あと配列サイズ難しい。重要なのは, 切り貼りすると1番深いところの深さが元のやつより増加するので,最終的に1番深いところ(どれでもいい…

AOJ2338 よくわかる二重魔法

AOJ

問題: Intelligible Double Magic | Aizu Online Judge要約すると、N頂点M辺の無向グラフが与えられるので好きに辺を有向にして(u,v)...uからvにいける ような組を多くせよ、という問題(N lowlinkを使って二重辺連結成分分解し重みつき木にしてdpすれば求め…

AOJ2377 ThreeRooks

AOJ

これで1200+以外は1問以上解いた事になった 概要X*YのマスにK匹のうさぎがいる。互いに攻撃できないように3個のルークを置く場合の数をmod 10^9+7で求めよX,Y 解法 3個同じ所に並んでいる場合 2個並んでいて1個はその範囲にはない 3個が直角に並んでいる場合…

AOJ2603 Time Table

AOJ

バスをm本走らせてn人拾う時の待ち時間の和の最小値を求める問題 とりあえずバス停の場所を時間からひくといつ出発するとちょうどかがわかるので、それをsortしてTiとおくまず何も考えずに愚直なdpの式を立てると dp[i][d] = min{0dp[i][d] = i * t[i] - Si …

AOJ2445 MinimumCostPath

AOJ

MinimumCostPath | Aizu Online Judge まあまあ面白かったn * n (nどう見てもスカスカで、殆ど邪魔されずに行けそうだけど左下と右上付近は混雑するかもしれないので、近くだけbfsして後はdp(経路を最初に通る障害物で区別したりするとなんとかなる)

AOJ2439 Hakone

AOJ

箱根駅伝。問題概要は略。 解法が面白かったのでメモdp[i][j] : 現在i位まで見てj個unmatchedな場合の数 として、 i番目が-ならそのまま, Dならi番目をそれまでの空いているところに入れるのでj通り, またi番目にそれまでのを入れる.... dp[i+1][j-1] += dp[…

AOJ0548 Reindeer with no sense of direction

全探索系苦手なので放置していたが本選前なのでやってみた。 教会から逆向きに探して、使ってない家があったら必ず配るをすると良いことに気付くだけ。TL緩いしあんまり工夫していない.... #include <cstdio> #include <cstring> using namespace std; #define rep(i, n) for(</cstring></cstdio>…

AOJ0524 Searching Constellation

AOJ

あまり考えずに書いたので無駄なことしてる #include <cstdio> #include <vector> #include <algorithm> #include <map> using namespace std; int m, n, tmp; pair<int,int> ans; bool comp(const pair<int,int> a, const pair<int,int> b){ return a.first > b.first; } int main(){ while(scanf("%d", &m)){ if(m == 0</int,int></int,int></int,int></map></algorithm></vector></cstdio>…