ruby
残り30分で4完までいったところで酒を飲んだよね。 A - Fifty-Fifty 4文字からなる文字列が2種類の文字それぞれ2文字ずつから成るかどうか判定させられる。 無限に実装のバージョンがあるので好きなやつを使う(解説になってない)。 s = sorted(input()) if …
tomerun.github.io これにあるやつで難易度低そうなABCの問題セットから解いていくシリーズ。界隈ではABC042以降を解けという声がありますが果敢に無視します A - テスト評価 数値が与えられるので値で分岐して答える n = gets.to_i if n<=59 puts "Bad" els…
ソートアルゴリズムの実装自体やったことないぜ!!!!!!!!!メリークリスマスイヴ!!!!!!!!! n 枚のカードの列を整列します。1枚のカードは絵柄(S, H, C, またはD)と数字のペアで構成されています。これらを以下の疑似コードに基づくクイック…
irb(main):016:0> n = 4 => 4 irb(main):017:0> table = (1..n).to_a.zip(Array.new(n, Array.new)).to_h => {1=>[], 2=>[], 3=>[], 4=>[]} irb(main):018:0> table[1] << 1 => [1] irb(main):019:0> table => {1=>[1], 2=>[1], 3=>[1], 4=>[1]} irb(main):…
アロー演算子じゃないです。 インスタンス変数: 値 みたいな感じで require 'json' require 'time' class Hito attr_accessor :age, :name, :id def initialize(age, name) @age = age @name = name @id = Time.new.iso8601(6) end end human = Hash.new a =…
module_functionを使うと確かに特異メソッドが作れる。が、それで作られるメソッドは、同時にプライベートメソッドでもある。( 参考:伊藤淳一「プロを目指すためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで」kindle版 , 技術評論社, 位置 74…
なにをいってるかわからねータイトルですが。 rubyにはoptparseっていうコマンドラインパーサが標準ライブラリ*1があり、使う機会があった github.com -hでヘルプを表示できるのだが、たとえばこんなやつ require "optparse" OptionParser.new do |opt| begi…
AOJ ITP1_6_B タイトルのやつでおいしい書き方ができずに少しハマった。 2次元配列を連番で初期化 map内での宣言で要素を初期化できる。範囲オブジェクトをto_aで配列にしてぶちこんだ。 cards = Array.new(4).map { Array.new((1..13).to_a) } => [[1, 2, …
or3.hatenablog.com のシリーズの続きのつもりです。 環境 基礎 「とりあえず写経/コピペするだけだし'test'ってフォルダ/ファイル/class/メソッド名でいいや。そういうのgithubでよく見るし」 TDD? BDD? spec? プロジェクトフォルダ作成 bundlerでRSpecをイ…
最近っつっても一月くらい前に書いて以降ほったらかしにしてたやつです。長いので目次付きです。 自分用のメモ代わりに書いてたもので、いちおうわりと知識がなくても頭からおっていけば忘れてからでも分かるように丁寧に書いたつもりですが、文体とか構成と…
前回rubyをいれたんですが、rubyいれたら書き始める前に使い方を覚えておけと話題のrubocopを触ってみます。 github.com
Rubyをやります。とりあえず駆け足で周辺知識と言語仕様の浅いとこまで ドキュメント 用語 環境に関しての用語 rbenv gem Bundler Rake Shim ruby-build irb 言語に関しての用語 シンボル 特異メソッド unless文 until文 case~when 範囲オブジェクト eachメ…