Isa@Diary

ソフトウェア開発やってます。プログラミングとか、US生活とかについて書きます。

Topcoder

SRM616 Div.1 250

コードが書きたい気分だった。一番遅いstart+periodのlcmまでシミュレートすればよい。 (一番遅いstart時点でのsleep) > (一番遅いstart+全部のperiodのlcmの時点でのsleep)の場合 どんだけ開始時のSleepが大きくても周期ごとに減っていくのでそのうち起きる…

C#でTopcoderに出る準備をした

意外と手間取った… Plugin CodeProcessor+FileEdit+TZTesterCShttp://starlancer.org/~ysn/TZTesterCS/ 導入方法については http://gulfweed.starlancer.org/d/index.php?itemid=10 を参照した(いい加減覚えた方がいいと思う…)テンプレートは https://github…

SRM565 Div.1

実に5ヶ月ぶり、今年最後のSRM。 8月はSWoPPといろいろ、9月は旅行いったりなんだり、後半から12月頭まではSCとその後処理 としばらく参加できていなかった… 結果 o--(+0/-0) 228.60pts 219th 1959->1965(+6)維持できてよかった。 250 MonstersValley 典型的…

SRM551 Div.1

練習です。 250 ColorfulChocolates 文字列が与えられて、隣接する2つをmaxSwap回swapしたときの 連続する同じ文字の最大の長さを求める。方針は2つ 同じ文字に注目して、中央にあるものに寄せるときのコストといくつくっつけられるかを計算 区間を決めて、…

SRM549 Div.1

結果 o--(+0/-0) 224.08pts 60th 1782->1886(+104)Highest更新して初の1800台到達! 600 Magical Hats Medも解けるようになっていかないといけないのでMed Openしてみた。 英文が読みづらい…要はコインが入っている場所を絞り込んでいくみたいだけど コイン…

SRM544 Div.1

結果 ---(+0/-0) 0pts 353th 1768->1660 (-108) 大敗北 275 よくわからない…総票数kと仮定すると得票数vは k*(p[i]-0.5) 500 Greedyにやっていけばよい。こっちのほうが簡単じゃないか!訴訟! 感想 人権less

SRM543 Div.1

結果 o--(+0/-0) 232.13pts(192nd) 1705->1768(+63) またもやhighest更新です。Petrとはじめて同部屋でした。 250 各bitごとに調べていった。 下から[a,b]のxorを取ったときの下からkbit(0-indexed)目は (([0,b]の下からkbit目が1の個数)-([0,a-1]の下からkb…

Topcoder Open Round.2B

結果 o--(+0/-0) 184.32pts 444th 1671->1705(+34)Highest更新、1700台にのりました。 300-550-900とか0完フラグだろ…と思ったものの 300が解けてよかった。 300 場合分けでガンガン。 0がないときは明らか、 0がk個あるとするとき、 k箇所に1本ずつ当てたと…

SRM542 Div.1

結果 不参加でした。 250 xy平面上(0 a->b->c->aの道のり(移動は軸に並行のみ)がminT以上maxT以下になる a,b,cの置き方の総数を求めよ。という問題。a,b,cの道のりはa,b,cを内包(辺上を含む)する最小の長方形の周の長さに等しい。 ┌--A--┐ │ | B | └-----Cイ…

SRM541 Div.1

結果 o--(+0/-0) 149.02pts 310th(Div.1) 1629->1671(+42)またもやhighest更新! 250 n匹(n アリ同士が衝突すると消える。最終的に残るアリの数を答えよ。はじめは任意の異なる2匹のアリがぶつかるかどうかが解るので時系列順に出して 云々かなぁと思ったも…

SRM540 Div.1

結果 o--(+4/-0) 282.82pts 58th(Div.1) 1481->1665(+184)Highest更新 && 黄色到達 && Div.1初2ケタ! 250 A[0]を決め打ちすればBを満たすAは一意に決まる。 またA[0]を1増やした時にA[k]が増加するか減少するかは 符号列によって決まる。例えば B: + - + 3 …

TCO2012 round.1A

結果 oo- (+0/-0) 505.34pts 442nd 1436->1481(+45) Highest更新&&TCO Round1通過! 250 しばらく問題文を正しく読めてなかった。 最大8ターンなのでシミュレーションすればよい。 vector <string> getWinners(vector <string> players) { set<string> ret; sort(players.begin(), pl</string></string></string>…

SRM 538 Div.1

随分空いてしまった。 結果 oo- 381.48pts 1344->1436(+92)Highest更新&&初midpassed(450だけど) 250 xy平面上にある点の集合に対し、(0,0)を出発点として全ての点 を任意の順で訪問するとき、歩数のparity(偶奇)が与えられたものと 一致するような訪問順が…

SRM532 Div.1

300-450-1000という変則セット。 結果 o--(+0/-0) 142.27pts 314th(Div.1) 1224->1320(+96) 300 DengklekMakingChains 300は怖いなぁと思いつつ問題読む。3つの{.|0-9}からなる文字列が与えられ、それを任意の順番でconcatしたときに できる連続する数字の和…

SRM436 Div.1 Easy BestView

問題 xy平面上の(i,0)に高さh_i(i=1,2,...,n)のn本のビルがあるとき、あるビルから見える他のビルの屋上の最大数を求めよ 方針 あるビルに注目したときそのビルから左右方向に別々にループを回すのはめんどいので ビルiからビルjの屋上が見える場合その逆も…

SRM439 Div.1 Easy PouringWater

方針 N本のボトルを運ぶときの最小の本数==Nの立っているビットの数 なので、ビットカウントをしてそれがKより少なければ運ぶことができる。これを1本ずつ足していって調べてみればよい。 足す本数は、多く見積もっても2^k ビットカウントにO(logn)掛かると…

SRM401 Div.1 Easy FIELDDiagrams

問題 整数nが与えられる。 0,1,...,n-1行にそれぞれn-1,n-2,...1個のスペースがあるとし、左詰めで箱を詰める。 ただし、i行目の箱の数a_はa_i>a_j(i 方針 要は下に行くほど少なくなっていけばよい。 n-1行は0個か1個なので dp[0][0] = 1; dp[0][1] = 1; と…

SRM528 Div.1

結果 o--(+0/-0) 157.5pts 461st(Div.1)レートは 1221->1256(+35) 何とか年越しを青で迎えることができました。 250 うなぎ切るよ! 10nな長さのうなぎはn-1回切ると長さ10のうなぎがn本取れるのでお得、なので 長さが10の倍数のものを小さい順に、そうでな…

SRM526.5 Div.2

結果 oo- (+0/-0) 478.37pts 105th(Div.2) 1190->1221(+31)Div1復帰しました。 250 MagicStonesStore ゴールドバッハ予想を使うとちょっと楽になるらしい。 sieveしてから全探索、引数nに対して2*n個というのを初め忘れていて提出が遅れた。Passed System Te…

SRM525 Div.1

結果 ---(+0/-0) 0pts 1251->1191次回はDiv.2。 300 外側から切っていくということは残せるのは長方形なので、 任意の部分長方形についてその内側をカウントすればいいのだが、そこからそれを残すために移動する回数を求める方法を考えて迷走した。 任意の部…

SRM423 Div.1 Easy

問題 無限に広がるマス上にn個のチェッカーがあり、そのうちi個(1 方針 解となるx,y座標は入力として与えられるx,y座標の中にあるはずなので、それぞれ50*50=2500通りの 解が考えられる。 これらの候補に対し入力されたすべてのチェッカーからの移動距離(マ…

SRM 523 Div.1

x-- (+0/-0) 0pts 467th Ratingは1371->1321 (-50) 250 初め upperBound 等差数列は計算で、等比数列の方は計算して等差数列とかぶってれば増やさない、 という方針でやったものの、多くの人と同じく upperBound を忘れててChallenge Suceeded. 500 DPむりげ…

SRM522 Div.1

落ちたくない一心で迎えたDiv1復帰後1回目のSRMox- (+0/-0) 234.09pts 197th(Div.1)Ratingは1276->1371(+95) 安全圏まで上がりました。 250 openした瞬間一瞬Grundy数とかそういう方向かと思ったけど問題を読む。 連続するA,Bは1つとしても同じなのでsample…

SRM521 Div.2

oo-(+2/-0) 826.39pts 20th(Div2) 1151->1276(+125)祝!Div1昇格! 半年かかりました…(8,9月はインターンのためあまり参加してませんでしたが)250i番目(0 始め0 直した。 同じミスしてる人を2人Challengeで落とした。500某社のインターンWebテストでありまし…

SRM520 Div.2

1ヶ月ぶりぐらいのSRMoo-(+0/-0) 598.87 48th(Div2) 1047->1151(+104)大幅アップ。250 降順ソート→自分の場所を探して部屋数で割るだけ。 初め(点数,index)のpairを作ってsortとかしようとしてたけど 必要ないことに少しして気づいた。500 明らかにLuckはHar…

SRM 517 Div.2

久々のSRMまずクリックミスして500をopen. 初めての事態だったので焦って慌てて250を開いてしまったけど、500から初めるべきだったかもしれない。250 題意が一度で取れず、2回読んだ。 まずh側に調べて何回Bに変えるかを調べる board.size() == h ならreturn…