2015-03-18から1日間の記事一覧

不定期やるだけ(AOJ)

やるだけ. Flick Input(AOJ 2417) 時代を感じる. #include <iostream> std::string table = " kstnhmyr", table2 = "aiueo", table3 = "TLURD"; int main(){ std::string S, T = ""; std::cin >> S; for(int i=0;i</iostream>

AOJ 2407 - Simple Othello

ふんふむ. 解法 かたまりで見る. 例. ooxox -> oxox, xoooox -> xox (1) かたまりが1つ(o, x) 両者はパスするしかないので,そのかたまりの色の方が勝つ.(2) かたまりが偶数個 oが勝つ.(3) かたまりが奇数個 端っこの色のほうが勝つ. 例. oxoxo -> oの…

AOJ 2408 - Social

うさぎ社会の闇. 解法 やるだけ. コード #include <cstdio> int main(){ int N, K; scanf("%d %d", &N, &K); int M[50], bunny[50][50]; for(int i=0;i</cstdio>

AOJ 2254 - Fastest Route

やるだけ. 解法 bitDP. コード たまにはループで. #include <cstdio> #include <algorithm> int T[16][17], T_[1<<16][16]; int dp[1<<16][16]; int main(){ int N; while(scanf("%d", &N), N){ for(int i=0;i</algorithm></cstdio>

AOJ 2009 - Area Separation

毎回どうだっけってなる. 解法 1本ずつ直線を足していく.(今までの直線(正方形の辺を含む)と加えた直線の交点)-1だけ領域が増える.但し,正方形内にない交点は含まない. 重複して数えないよう注意する.例えば, から のように直線を加えたとき,交点は3…

AOJ 1298 - Separate Points

ミナリンスキー和. 解法 n>=mとして一般性を失わない.(必要なのは白か黒かという区別だけである.) (1) n=1のとき m=1である.点は重ならないといっているので,適当な直線で分けられる.(2) n=2のとき m=1ならば,黒の2頂点を結ぶ線分内に白い点が入って…