画竜点睛を衝く@mapyo

日々やった事をつらつらと書くブログです

TopCoder入門中

GW前に登録だけして、その後PRACTIC?の問題を解き始めて途中でやめてしまった以来、何もしてない。

英語だし、よく覚えてないし、改めて入門関係で勉強。
参考サイト
http://akagi.jp/blog/archives/1361.html

プラグインを入れたら時間を短縮出来るらしい。
http://kishibe.dyndns.tv/index.php?%E9%9B%91%E8%A8%98%2FTopCoder%E3%81%A7%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%82%92%E5%B0%8E%E5%85%A5%E3%81%97%E3%81%A6%E3%82%B3%E3%83%BC%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0%E6%99%82%E9%96%93%E3%82%92%E7%9F%AD%E7%B8%AE%E3%81%99%E3%82%8B
プラグインを入れて自分で設定しておくと、対応するソースとか、自動生成してくれるらしい。


上位陣結構使ってるプラグイン構成。
http://gulfweed.starlancer.org/d/index.php?itemid=10
CodeProcessor+TZTester+FileEdit
が一般的のようだ。

この辺をゆくゆくは設定してみたいけど、とりあえずやり始めないとやるやる詐欺になるので、とりあえず、やる。


TopCoderのコーディング環境を快適にするプラグイン「moj」をインストールする
http://www.kadoppe.net/archives/2011/03/topcoder-plugin-moj.html
ここも参考になりそう。



あ、とりあえず、やる。DIV2の方が簡単らしいので、それをする。
SRM504 DIV2 250を選んでみた。
問題が表示される。やっぱり英語。。。。まず理解するのに時間かかりますね。


途中、やっぱりネットサーフィンをしてしまって、ブクログに登録した。本棚とか作れて面白そう。あと、電子書籍とかも購入してみたい。


この問題、なかなか意味がわからずに、調べてるうちに解答のソースを見てしまった。が、書くときは何も見ずにとりあえず書いた。




class ComparerInator {
public int makeProgram(int A, int B, int[] wanted){
boolean flgA=true, flgB=true;
boolean flgCompA=true, flgCompB=true;

for(int i=0;i<A.length;i++){
if(!(A[i]==wanted[i])) flgA=false;
if(!(B[i]==wanted[i])) flgB=false;
if(A[i]>B[i]){
if(!(A[i]==wanted[i])) flgCompA = false;
if(!(B[i]==wanted[i])) flgCompB = false;
}
if(A[i]<B[i]){
if(!(B[i]==wanted[i])) flgCompA = false;
if(!(A[i]==wanted[i])) flgCompB = false;
}
if(A[i]==B[i]){
flgCompA = false;
flgCompB = false;
}
}
if(flgA || flgB) return 1;
if(flgCompA || flgCompB) return 7;
return -1;
}
}


とりあえず、SUBMITが出来たらから、いいのか?
穴がありそうなないような。。。
練習問題はこれで終わりなのか。。。あんまりわかんないなー。
とりあえず、簡単な問題を解いていくつもり。ブログに貼り付けてる人とかもいるので、俺もそんな感じでやっていこうと思いまっす。
本番にも出来たら挑戦してみたいなー。環境を整えなきゃいけないかもしんないけど。