Instantly share code, notes, and snippets.

# Toshiyuki Masuimasui

• Sort options
Last active Aug 29, 2015
Raspberry PiのRubyでマウスホイール信号を取得する
View raspi_mouse.rb
 File.open("/dev/input/event0","rb"){ |f| while true do s = f.read 16 (time, type, code, value) = s.unpack "qssi" if type == 2 and code == 8 then puts value end end }
Created Apr 13, 2015
View gist:25ef6fe89e66f0f12252
 puts "abc"
Created May 25, 2015
a^2 + b^2 == c^2 かつ a+b+c=1000, a < b < c となる a, b, c を求める
View problem9.rb
 (1..1000).each { |i| (1..1000).each { |j| k = 1000 - i - j next if j <= i || k <= j puts "#{i}, #{j}, #{k}" if i*i + j*j == k*k } }
Created May 25, 2015
a^2 + b^2 == c^2 かつ a+b+c=1000, a < b < c となる a, b, c を求める (流石にナイーブすぎて遅いバージョン)
View problem9-slow.rb
 (1..1000).each { |i| (1..1000).each { |j| (1..1000).each { |k| next if j <= i next if k <= j next if i+j+k != 1000 puts "#{i}, #{j}, #{k}" if i*i + j*j == k*k } } }
Created May 25, 2015
1時間以内に解けなければプログラマ失格となってしまう5つの問題
View gist:b688b4275f5d59fea6ec
 # # https://blog.svpino.com/2015/05/08/solution-to-problem-5-and-some-other-thoughts-about-this-type-of-questions # def power(level, a, &block) if level > 0 then ['+', '-', ''].each { |op| a[level-1] = op power level-1, a, &block } else
Created May 26, 2015
a^2 + b^2 == c^2 かつ a+b+c=1000, a < b < c となる a, b, c を求める
View slow.rb
 1.upto(1000) do |c| 1.upto(c-1) do |b| 1.upto(b-1) do |a| next if a + b + c != 1000 next if a * a + b * b != c * c puts "#{a}^2 == #{b}^2 + #{c}^2" end end end
Last active Aug 29, 2015
1時間以内に解けなければプログラマ失格となってしまう5つの問題(2)
View gist:89fa67d47c1925f89329
 # # https://blog.svpino.com/2015/05/08/solution-to-problem-5-and-some-other-thoughts-about-this-type-of-questions # def power(n, alts, &block) _power(n, 0, [], alts, &block) end def _power(total, level, res, alts, &block) if level < total then alts.each { |op|
Last active Aug 29, 2015
1時間以内に解けなければプログラマ失格となってしまう5つの問題(3)
View gist:8a5a6ae7e5bb7acf83ee
 # # https://blog.svpino.com/2015/05/08/solution-to-problem-5-and-some-other-thoughts-about-this-type-of-questions # def power(len, sels, arr=[], &block) if len == 0 then yield arr else sels.to_a.each { |sel| power len-1, sels, arr + [sel], &block }
Last active Aug 29, 2015
Promiseの例
View promise.coffee
 fs = require 'fs' readFile = (filename, enc) -> new Promise (fulfill, reject) -> fs.readFile filename, enc, (err, res) -> # readFile()は非同期関数 if err reject err else fulfill res
Created Aug 25, 2015
Gyazo1
View register.rb
 id = ARGV[0] time = ARGV[1] url = ARGV[2] exit unless id && time && url time = time.gsub(/_/,' ') d = Image.find_by(image_id: id) d.date = Time.zone.parse(time).utc d.metadata = { 'url' => url }
You can’t perform that action at this time.