2008-11-01から1ヶ月間の記事一覧

srm427

とってもひどかった時のsrm日記。 div1:250 今回もなかなか読めなくて、要するに(yearLength % dayLength) * x = dayLength * yとなるような最小のxを求めれば良いんだろーと思ってlcm(yearLength % dayLength, dayLength) / (yearLength % dayLength)って書…

Binary Indexed Tree

FloatingMedianとProductOfPricesとUVa 10909で動くのを確認。 template<class T> class BIT{ public: BIT(int n) : n(n), tree(n) {} T read(int idx) { // returns 0 if idx is smaller than 0 T ret = 0; for (; idx >= 0; ret += tree[idx], idx = (idx & (idx + </class>…

srm426

黄色くなって初めてのsrm! div1:250 読んでも読んでも問題の意味する所が分からなかったが、こんだけ分かりづらかったらみんなもスコア低くなるだろ。。。と思って特に焦らず読む。10分ほど読んでようやく手計算と結果が一致したので注意深く組んで提出。部…

UVa 11544 Recruiter's Problem

二部マッチングの練習をしようと思ったら丸一日かかった…グラフはこんな感じ。 SRC --1-- CANDIDATE(i) --1-- PROJECT(j) --r-- SINKまず最初にここと同じで、一人目の一つ目の仕事からgreedyに割り振り、流量が減らないなら採用する事を繰り返す、という方…

DinicとEdmondsKarp

どれが最新か分からなくなりそうなのでここにメモ。 // UVA 10989 AC:0.990sec // PKU 3469 AC:5938MS // (時間はdinicの方) class Graph { private: struct Edge { int to, back, flow, cap; Edge(int to, int cap, int back) : to(to), back(back), flow(0…

srm425

調子に乗ってる時だけ更新するsrm日記。 div1:250 深さ14で枝が4本伸びると2億、うーん。。。もしかしてNESWの列だけ見て簡単にsimple性を判定する方法があるのか?と悩んで遅れる。ちょっと考えてバック出来ないんだから枝の数は3本以下になって400万余裕じ…

srm424

調子の悪い時は書かないsrm日記。 div1:250 2〜9で与えられた数を割っていけば良い。最初2から割って100が2*2*5*5で4になってしまった(正しくは4*5*5で3)ので9から割るようにした。 passed system test 225.63 div1:600 600だけど簡単。strengthとintellect…