2014-01-01から1年間の記事一覧
今年を振り返ってみようかなと思います。今年自分はこんな記事を書いていました。今年の目標(2014) - simanmanのブログ 今年の目標(2014) - simanmanのブログ・topcoder Algorithm部門のレート1500以上(未達成) ・topcoder Marathon部門のレート2000以上(未…
「How Many Divisors?」 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_3_DAOJの問題を解いてて「約数の配列だして、upper_boundとlower_boundをとれば終わりやな」と思ったのですが、Rubyに今の要素全部無かったので、作りました。 requi…
Rubyで文字列連結のメソッドの動作速度を比較してみました。 require 'benchmark' Benchmark.bm do |x| NUM = 10000 word = "Hello" x.report(:add) do str = "" NUM.times { str += word } end x.report(:concat) do str = "" NUM.times { str.concat(word)…
Dateクラスは最初から存在しているみたいなのですが、インスタンスメソッドが無いです。 p Date.instance_methods(false).count #=> 0 require 'date' p Date.instance_methods(false).count #=> 68 特に困るわけでは無いですが、すごい気になります。
今年も沖縄でOSCが開催されたので、1人で行ってきました!今年は「去年に比べて、発表内容の理解が出来たかな」と思うと同時に「学ぶべきことがまだたくさんある」と感じたカンファレンスでした。 ・「業務アプリケーションにおけるこれからのWeb開発」 今年…
まだ作成中だけど、gemの名前確保も含めてリリース「shiritori」 https://github.com/siman-man/shiritoriルールに関してもまだ細かいところは決めてないけど大まかにはこんな感じ ルール 1. 最初に適当なオブジェクトを入力 2. そのオブジェクトで使用でき…
作ったというより名前を確保した。「oh_my_method」 https://github.com/siman-man/oh_my_methodgemの名前はoh_my_zshのパク...じゃなくてオマージュしました。日頃オープンクラスしては、使い道の分からないメソッドを作って遊んでいたので、「使い捨てなの…
Rubyで素数を扱いたいときには便利なprimeライブラリがあります。自分がよく使用しているのは数値が素数かどうかを判定するprime?メソッドです。 require 'prime' p 3.prime? #=> true p 10.prime? #=> false p 17.prime? #=> true 他にも素数列を簡単に習得…
自分はRubyで数値をインクリメントするときはいつも「+=1」を使用しているのですが、succメソッドとnextメソッドもインクリメントに使用できるので、どれが一番速いのか調べてみました。 require 'benchmark' Benchmark.bm do |x| cnt = 100000000 fixnum = …
前からRubyは日本語の関数が書けるのは知っていたのですが、変数も日本語にできるんですね。 def 挨拶(名前) puts "こんにちは" + 名前 + "さん" end 挨拶("山田") こんにちは山田さんこれで何か面白いことできないかなーと思ったのですが、なかなか良いのが…
アルゴリズムの勉強中なのですが、せっかくなのでRubyで書いたコードを残していこうかなと思っています。今回はユークリッドの互除法です。最大公約数を求める時に使います。Rubyには元からgcdメソッドがあるので、わざわざ再開発する必要はないのですが。。…
ShoesでGUIプログラミングしていると、デバッグの際に中の値を見たくなる時があるので、それを出力する方法です。出力にはinfoメソッドを使用します Shoes.app { radius = 40 oval( left: 10, top: 10, radius: radius) info("radius size = #{radius}") } …
「沖縄Ruby会議01」に参加&LT発表してきました! http://regional.rubykaigi.org/okrk01/発表資料 「琉大図書館にRuby本を!」 http://www.slideshare.net/_siman/ruby-31905851 ※ 発表資料に関しては少し修正が入っています。 まさかのトラブル 今回、琉球…
よくRubyで多重代入とか使うんですが、この仕様は知らなかった... a = 1,2,3 [1, 2, 3]こうなって欲しい時はaの前に*をつけるので、ちょっと予想外でした *a = 1,2,3 [1, 2, 3]というのも x = 3, y = 4 このように宣言して x = [3, 4] y = 4となったのが事の…
気になったので調べてみました。 Rubyではある値を越えた時にFixnumからBignumへと変わります。 p (2**0).class #=> 1 p (2**10).class #=> 1024 p (2**100).class #=> 1267650600228229401496703205376 p (2**1000).class #=> 略 Fixnum Fixnum Bignum Bign…
ShoesはRubyでGUIを作るためのツールです。前回のHello Worldに続き、今回は簡単な計算機を作ってみました。ソースコード https://github.com/siman-man/calculator/blob/master/calculator.rb完成品 ボタンの縦のサイズが自由に決められないのは少し残念で…
Rubyで今年の運勢を占いましょう ruby -e 'puts %w(大吉 中吉 小吉 吉 末吉 凶 大凶).sample' 中吉中吉でした
競技プログラミングを頑張る topcoderのrateを上げる。 ・アルゴリズム1500以上 ・マラソン2000以上 モバイルアプリに挑戦 何かアプリを1つ作る 新しい言語に挑戦 達人プログラマー的な 今年もいい年になりますように
2013年のうちに書いとくべきだったけど忘れてました。 競技プログラミングな年 2013年は競技プログラミングの年でした。 今までは趣味でアプリ開発とかしてましたけど、違った面白さがあったハマりました。今年のレーティングはアルゴリズムのほうが1128(緑)…