2014-08-01から1ヶ月間の記事一覧

TopCoder SRM #629 Div2

ox- でした。1107 -> 1134? くらい(覚えてない) Med通らなかったけどシステムテストケースが Constraints を満たしていなく、これを考慮すると通っていた。 http://apps.topcoder.com/forums/?module=Thread&threadID=829554&start=0 リジャッジがかかった…

Code Formula 2014 予選B

http://code-formula-2014-qualb.contest.atcoder.jp/ ooo- で 115位です。Cでバグってかなり時間をかけてしまった。 A irb (Rubyの対話環境) でちゃんとテストしてから出したら36秒でした。15秒で出す人の頭と手の動きはどうなっているんだろう。 puts 7-ge…

Codeforces Round #263 (Div. 2)

http://codeforces.com/contest/462 日本人writer回でした。 結果は ooo-- で 1577 (-53), expert Rank: 551 でした。ここ数ヶ月間安定してしまっています。 A グリッドにoかxが書かれている。上下左右に隣り合うoのマスの数が全てのマスで偶数になっている…

AOJ 2426 Treasure Hunt

問題 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2426 個の点と 個の長方形が与えられる。各長方形の辺上または内部にある点の数を求めよ。 解法 座標圧縮・累積和の前計算といった工夫をしないとTLEする。 template<typename T> inline void compless(v</typename>…

AOJ 2428 Lost Number

問題 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2428 穴あきの数式が与えられる。穴に適当な文字を入れて計算結果を最大化せよ。 解法 構文解析はエラーが起こったらメッセージ付きの例外を投げる実装にするのが一番実装もデバッグも楽だと…

AOJ 2431 House Moving

問題 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2431 1 から までの整数を並び替えた列 が与えられる。 をコスト で好きな場所に移動できる。昇順にソートするのに必要なコストの最小値を求めよ。 解法 移動させるときはまとめて移動させれ…

AOJ 2429 marukaite

問題 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2429 のグリッドがある。各マスは初期状態でoが書かれているか書かれていないかのどちらか一方である。各マスに対して、空白のときに書くコストと既にあるoを消すコストが与えられる。同じ行…

AOJ 2425 A Holiday of Miss Brute Force

問題 変な六角座標上での最短路問題。移動にかかるコストが時間によって変わる。(座標, 時間, 無視した回数)を状態に持ってダイクストラ法で探索した。実装が面倒。 ソースコード ll const inf = 1<<28; double const pi = acos(-1); int sx,sy,gx,gy; int n…

AOJ 1264 Concert Hall Scheduling

追記 : タグが間違っていたのを修正 問題 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1246 コンサートホールが2つあリ、 日から 日までの期間を料金 で使用したいという申し込みが 個来ている。期間が被らないように2つのコンサートホールに…

Codeforces Round #260 (Div. 2)

ooo-- = 1630 (+90), expert Rank: 382 でした。それなりの速度でコンスタントに3問解ければDiv1に行ける雰囲気ですね。 Cをもっと速く解いてEに時間を掛けたかったです。Dは解ける気がしなかったので無視しましたがTrie木(トライ木と読む)というデータ構造…

AtCoder Regular Contest #027

oxo-で117th Bが通らない理由がまだわからない A ふつうに60進数で引き算する int main(){ int h,m;cin>>h>>m; int ans=0; ans+=(18-h-1)*60 + 60-m; cout << ans << endl; } B UnionFind木で同じ数字を表す文字をUnionしていき、答えの初期値1をそれぞれの…