電波ビーチ

☆(ゝω・)v

ruby

ABC132に参加した(WIP Dまで)

残り30分で4完までいったところで酒を飲んだよね。 A - Fifty-Fifty 4文字からなる文字列が2種類の文字それぞれ2文字ずつから成るかどうか判定させられる。 無限に実装のバージョンがあるので好きなやつを使う(解説になってない)。 s = sorted(input()) if …

ABC 028を解いた

tomerun.github.io これにあるやつで難易度低そうなABCの問題セットから解いていくシリーズ。界隈ではABC042以降を解けという声がありますが果敢に無視します A - テスト評価 数値が与えられるので値で分岐して答える n = gets.to_i if n<=59 puts "Bad" els…

AOJ ALDS1_6_C Quick Sort

ソートアルゴリズムの実装自体やったことないぜ!!!!!!!!!メリークリスマスイヴ!!!!!!!!! n 枚のカードの列を整列します。1枚のカードは絵柄(S, H, C, またはD)と数字のペアで構成されています。これらを以下の疑似コードに基づくクイック…

【ruby】連番をキーとし配列を値にしてるハッシュ

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):…

Ruby オブジェクト -> hash -> json

アロー演算子じゃないです。 インスタンス変数: 値 みたいな感じで 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は要らない

module_functionを使うと確かに特異メソッドが作れる。が、それで作られるメソッドは、同時にプライベートメソッドでもある。( 参考:伊藤淳一「プロを目指すためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで」kindle版 , 技術評論社, 位置 74…

rubyの便利コマンドラインパーサoptparseのdescriptionがsummaryなので見やすくしたい

なにをいってるかわからねータイトルですが。 rubyにはoptparseっていうコマンドラインパーサが標準ライブラリ*1があり、使う機会があった github.com -hでヘルプを表示できるのだが、たとえばこんなやつ require "optparse" OptionParser.new do |opt| begi…

【AOJ】Rubyで2次元配列を連番で初期化 && Rubyでpythonのisdigitっぽいやつ

AOJ ITP1_6_B タイトルのやつでおいしい書き方ができずに少しハマった。 2次元配列を連番で初期化 map内での宣言で要素を初期化できる。範囲オブジェクトをto_aで配列にしてぶちこんだ。 cards = Array.new(4).map { Array.new((1..13).to_a) } => [[1, 2, …

Rubyでの開発で最近学習したこと Rspec

or3.hatenablog.com のシリーズの続きのつもりです。 環境 基礎 「とりあえず写経/コピペするだけだし'test'ってフォルダ/ファイル/class/メソッド名でいいや。そういうのgithubでよく見るし」 TDD? BDD? spec? プロジェクトフォルダ作成 bundlerでRSpecをイ…

Rubyでの開発について最近学習したこと rbenv, gem, rubygems, bundler

最近っつっても一月くらい前に書いて以降ほったらかしにしてたやつです。長いので目次付きです。 自分用のメモ代わりに書いてたもので、いちおうわりと知識がなくても頭からおっていけば忘れてからでも分かるように丁寧に書いたつもりですが、文体とか構成と…

Rubocop使ってみる

前回rubyをいれたんですが、rubyいれたら書き始める前に使い方を覚えておけと話題のrubocopを触ってみます。 github.com

Ruby事始

Rubyをやります。とりあえず駆け足で周辺知識と言語仕様の浅いとこまで ドキュメント 用語 環境に関しての用語 rbenv gem Bundler Rake Shim ruby-build irb 言語に関しての用語 シンボル 特異メソッド unless文 until文 case~when 範囲オブジェクト eachメ…