解いた問題

4/09/2012

4/08/2012

TCO2012 1B

参加記録。通過したけど、残念な結果。

250 :
やるだけ。やるだけにも関わらずFailedSystemTest。

500 :
メモ化した。memo[区間の先端][区間の終端][今何匹か]
貪欲とか2分探索みたいな解法の人もいた。

1000 :
読んでない。


4/06/2012

SRM539 Div1 Easy

250
区間の両端だけ記憶して、それをマージしていく。

4/05/2012

UVa1238

UVa1238

DPする。
dp[どこまで見た][閉じていない開き括弧の数][これまでの和]
+ に括弧を付けても意味がないので、- のところに括弧を付ける。
- ( ... - ( ... - ( ) ... ) ... - ( ) ... ) みたいになるとして、
閉じられていない括弧の数が偶数か奇数かどうかで、今見ている数の符号が反転するかどうか分かる。

4/02/2012

SRM492 Div1 Easy

250
2つの木を切らずに使う様な場合を考える。何故それで正しいかはよく分からない。勘。
計算の順序によっては精度がアレ。サンプルが親切なので、気付かないってことはない。

UVa1255

UVa1255
ある時間からある時間までにどれくらいスタックに入れられるかメモ化orDP
memo[begin][end] = max{ 1 + memo[A][B] + memo[B][end] }

4/01/2012

UVa1247

UVa1247
ワーシャルフロイドする。

TCO2012 1A

参加記録。惨敗

250 :
全部試す。
ソートを忘れて再提出。

500 :
AとBが等しくなる場合はたぶん無い。素数を分母か分子に振り分けるパターン数 / 2。
__builtin_popcountにlong long int を使ってシステムテストで落ちる。

1000 :
ざっと読んだだけ。