Skip to content

Instantly share code, notes, and snippets.

View nabetani's full-sized avatar

NABETANI Takenori nabetani

View GitHub Profile
@nabetani
nabetani / rotcell_yokohamarb.rb
Created October 12, 2014 03:39
Yokohama.rb で 2014年10月に出した問題の実装例
# problem : http://nabetani.sakura.ne.jp/yokohamarb/2014.10.rotcell/
NEIBOURS = [[-1, -1], [-1, 0], [-1, 1], [0, 1], [1, 1], [1, 0], [1, -1], [0, -1]]
BOARD_SIZE = 5
def pos_to_index(s)
s[0]+s[1]*BOARD_SIZE
end
def process( board, cmd )
@nabetani
nabetani / test-alias.rb
Last active December 20, 2015 22:18 — forked from igrep/test-alias.rb
#!/usr/bin/ruby
# -*- coding: utf-8 -*-
# GistID: 6203578
=begin
Rubyのリファレンスマニュアル( http://doc.ruby-lang.org/ja/2.0.0/doc/spec=2fdef.html#alias )
「別名を付けられたメソッドは、その時点でのメソッド定義を引き継ぎ、元のメソッドが再定義されても、
再定義前の古いメソッドと同じ働きをします。あるメソッドの動作を変え、
再定義するメソッドで元のメソッドの結果を利用したいときなどに利用されます。」
の通り、

横浜へなちょこプログラミング勉強会 オフラインリアルタイムどう書く

var _ =require( "./lib/underscore-min.js" )
exports.Ball = function(i, w){
return {i: i, w: w};
};
exports.solve = function(balls){
function slicer( balls ){
var used=0;
return {
// see http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%205
def gcm( x, y ){
x=x as BigInteger;
y=y as BigInteger;
c=x.gcd(y);
return (( x / c ) * ( y / c ) *c)
}
println ( (1..20).inject(1){ i, j -> gcm( i, j )} )