2013年12月7日土曜日

TopCoderのSRMで自動的に翻訳してくれるプラグインを作成しました。(非公式KawigiEdit拡張)


TopCoderのSRMの問題を翻訳してくれるプラグインを作成しました。
(正確に言うと、KawigiEditプラグインの機能追加です。)

今まで、わざわざ翻訳サイトに投げていた人に便利になると思います!!


Arenaで問題 を開くとすぐに翻訳してくれます。




特徴

  • (独自)問題を開いた瞬間に翻訳し、ウェブブラウザで表示します。(見やすい)
  • (独自)MICROSOFT TRANSLATORを使っています。 (ある程度まで無料なので)
  • (独自)ページをキャッシュするので、過去に表示していたら素早く表示します。
  • KawigiEdit 2.4を元に改造を行っているため、Java/C++/C#/VB/Python すべての言語に対応しております。
  • プラグインの導入が簡単
  • (独自)答えがあっているとき、Desired answerとYour answerを表示しない(自分が欲しかったので)


Downloadはこちらから
https://docs.google.com/file/d/0B-5M9QAsSoVbUXRYV25FbU5yZjg/edit?pli=1


設定方法

Name:  KawigiEdit-yuki
EntryPoint: kawigi.KawigiEdit
ClassPath: ダウンロードしたjarファイルのパス



その他の設定方法はKawigiEditと一緒なので、こちらのブログが詳しいです。

TopCoder: Setting up KawigiEdit
http://mogproject.blogspot.jp/2013/09/setting-up-kawigiedit.html



免責事項


  • 非公式なので諸事情で突然公開停止になる可能性がございます。
  • 翻訳精度に関しましては、翻訳サイト様にお願いして下さい。
  • このプラグインを入れても、直訳のため問題が分かることは保証できません。
    (現に、自分は英語のまま読んでます。。)

改造元
KawigiEdit-pfa 2.4.0 (unofficial)
https://apps.topcoder.com/forums/?module=Thread&threadID=794920&start=0&mc=1#1759241

2013年11月6日水曜日

[Android]Calendarクラスのバグ?

注)比較的難易度高めの記事です。
Android APIのバグの可能性もあるので、もしそうでしたら、報告する場所教えてください><
(何か賞金とかもらえるなら折半で!)

Calendar使う場合、こういうことをする時があります。

DAY_OF_WEEK  
はcalendar オブジェクトが何曜日かというのを指定します。

WEEK_OF_YEAR
は calendar オブジェクトが一年の何週目(最大52週)というのを指定します。

この2つで、特定の日付を解決します。

(本当は YEAR (年)も設定する必要はありそうですが、なぜかAndroidでは必須ではない。)

Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
calendar.set(Calendar.WEEK_OF_YEAR, 30);
Log.d("tag", calendar.get(Calendar.WEEK_OF_YEAR) + "");

一旦 オブジェクトが日曜日 というのを設定します。
さらにcalendar オブジェクトが一年の30週目というのを設定します。
つまり 2013年7月21日というのを設定しています。
なので、ここでは30が出力されます。
しかし、

Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.WEEK_OF_YEAR, 30);
calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
Log.d("tag", calendar.get(Calendar.WEEK_OF_YEAR) + "");

と書いたら、なぜかWEEK_OF_YEARが反映されずに、
今週(2013年11月6日現在なら45)
が出力されてしまいます。

時間があったら、この問題を追ってみたいと思います。

ちなみに通常の Java(Java 7)ではこの問題は発生しないっぽいです。

参考:

Java API

http://docs.oracle.com/javase/jp/1.5.0/api/java/util/Calendar.html


Android API

http://developer.android.com/reference/java/util/Calendar.html

2013年8月22日木曜日

[MySQL]WordPressのセットアップではまったこと

WordPressのセットアップするときに、
MySQLにwordpressというユーザー名を作成し、パスワードを変更し、
そのユーザー名とパスワードを入力してもどうやってもMySQLに接続できなくてハマったのでメモ。

原因を調べて、もしかしたらというものを見つけたのでメモします。
(ただし再現性がないので、絶対というわけではないので。もし同じ症状の人がいたら、助けになるかもしれないかもしれない程度で。。)

phpMyAdminで表示したユーザー一覧はこちら


自分が設定したのは 
ユーザー名 wordpress ホスト % だったのですが、
デフォルトでユーザー すべて ホスト %  となっているものがあります。
ユーザー認証(WordPressのセットアップ)するときに、後者が優先されてしまってうまく設定できてなかったらしいのです。
なので、ユーザー すべて ホスト %を削除するとちゃんと設定出来ました。。
2,3時間ハマりました。。
ただし、再現性がないので本当は違う問題なのかも。。


2013年8月4日日曜日

[TopCoder]自分の解いた問題一覧を出してみました。

GitHubのMarkDownが面白そうだったので、せっかくなのでTopCoderの自分の解いた問題を一覧で表示するようにしてみました。

https://github.com/yuki2006/topcoder

ローカル側でREADME.mdを生成し、githubにあげたらいい感じに見えるようになってます。

今まで、どの過去問を解いたかなどの管理が一苦労だったので、これだけでも十分です。



こちらから一部ソースを拝借しました。
https://github.com/fornwall/eclipsecoder-archive

2013年8月2日金曜日

[TopCoder]SRM 587 Div2


Easy InsertZ

問題
http://community.topcoder.com/stat?c=problem_statement&pm=12700&rd=15699&rm=318350&cr=23018525

回答



Medium JumpFurther 

問題 




JumpFurther の方は、DP? DFS?とか結構悩んだけど、貪欲で行ってbadStepになってしまったら、最初の1stepを進まずにとどまるようにすれば、最大になります。

結構いい問題。

2013年7月27日土曜日

倍精度と整数の対応

Wikipedia「倍精度」
http://ja.wikipedia.org/wiki/%E5%80%8D%E7%B2%BE%E5%BA%A6


double型で 整数の対応可能(longに変換可能)なのは2の 53乗まで、

ただし、2のべき乗だけなら 63乗まで可能。