2013-07-19から1日間の記事一覧

SRM585 Div2 Medium(500) TrafficCongestionDivTwo

TrafficCongestionDivTwo class TrafficCongestionDivTwo: def theMinCars(self, treeHeight): T = [1,1] while len(T)<=treeHeight: T += [(T[-1]+2*T[-2])] return T[treeHeight]

SRM585 Div2 Easy(250) LISNumberDivTwo

LISNumberDivTwo class LISNumberDivTwo: def calculate(self, seq): return sum(seq[i]>=seq[i+1] for i in range(len(seq)-1))+1

SRM585 Div1 Medium(500) LISNumber

LISNumber動的計画法。小さい順にn枚のカードを選んだとき、a[i]≧a[i+1]となるiがちょうどk個になる並べ方の数を覚えておく。これは同じ数字のカードを区別した場合の数なので、最後に数字ごとにその数字のカードの枚数の階乗で割る。法Mが素数ならば、1/x =…

SRM585 Div1 Easy(250) TrafficCongestion

TrafficCongestionA001045 class TrafficCongestion: def theMinCars(self, treeHeight): T = [1,1] while len(T)<=treeHeight: T += [(T[-1]+2*T[-2])%1000000007] return T[treeHeight]

SRM585

Easy (250) 219.37 Medium (500) 0 Hard (1000) 0 Challenge 0 結果 227位 1911→1913

SRM584

Easy (250) 236.65 Medium (600) 0 Hard (900) 0 Challenge 0 結果 113位 1867→1911

SRM583

Easy (250) 198.76 Medium (500) 0 Hard (950) 0 Challenge 0 結果 412位 1934→1867