電波ビーチ

☆(ゝω・)v

「数列の差集合を取る」shell script

さっき生まれて初めてseq コマンドの存在を知ったので。 s1=`seq 0 12`; s2=`seq 3 7` (echo $s1 $s2 | sed -e 's/\s/\n/g' | sort -u; echo $s2 | sed -e 's/\s/\n/g') | sort | uniq -u むかしこれに近いことするためわざわざpython書いた気がする。確かそ…

消費したコンテンツ8月2019

8月です。就職しました。 映画 ドラマ 全裸監督 Life Below Zero(邦題:氷点下で生きるということ) 本 三体(一巻) はじめてのPHPプロフェッショナル開発 アニメ 新世界より 配信 花譜1stLIVE『不可解』 就職したせいで可処分時間が激減し、各コンテンツ…

WSL(ubuntu)でanacondaを使ってみる

setup WSL WSLを入れる。 アプリと機能 プログラムと機能 Windowsの機能の有効化または無効化 Windows Subsystem for Linuxにチェックを入れる 次に開発者モードにて有効化。 更新とセキュリティ 開発者向け 開発者モード そしてストアにてUbuntuをインスト…

消費したコンテンツ7月2019

書くのはタダだけどネタがないのでなんか書こうと思うんだけど続けられないとアレなので続けられそうなネタと更新頻度を考えた結果タイトル、および家賃を振り込むタイミングで動機づけしようと思います 映画 海獣の子供 パフューム ある人殺しの物語 チョコ…

nodeに入門して1週間経ったので整理がてらnpmをpublishしてみた記録

フロントエンドにはあまり興味ないんだけど(は?)、就活で狙えそうなのはWeb系ってことで学習している(え...)。このご時世にJSに一から触れることの複雑さ・困難さは、独学自習で未経験で転職だと伸び代やcontribute数なんかよりも使い捨て兵士としての…

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

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

ジェネレータで再帰的に組み合わせを返す

たとえば0 1からなるビット列の配列がほしいみたいなとき。組み合わせが少なければ愚直にやってもいいが、多いとき、ビット演算でやると文字列の扱いになって変換処理が時間的にボトルネックになり、リストで管理するとメモリ的にボトルネックになる。 ジェ…

俺はtask buildでGo modulesのgoコードを走らせたいだけなんだ

すげぇ久しぶりにGo書こうとしたら 前書いたのはたしか1.7系で、そのときのノリで再々々入門をしようとしてモダンな書き方を調べると、modules ?なんですかこれは? 知らない子ですね...? GOPATH モードからモジュール対応モードへ移行せよ - Qiita Go Modu…

ABC 039を解いた

総括すると、酒のつまみって感じです(?)(実際酒飲みながら答えた) A - 高橋直体 直方体の高さ、幅、奥行きが与えられるからその表面積を答える。直方体の展開図書けば分かるように全6面はそれぞれ同じ矩形が2つずつ3種類からなる。表面積はその合計なの…

ABC 028を解いた

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

2018年の段階で知らないことを呼んで知らないことのごく一端を知った気になった

元ネタ overreacted.io

ABC 030を解いた

ウデマエがクソなので日々の鍛錬として。 A 勝率計算 試合数と勝利数が2チーム分与えられるからそれぞれの勝率を比較しその結果によって出力を分岐する。勝率は当然勝利数 / 試合数で求まるのでそのまま計算する。intではなくfloatとして数値計算する。 a, b…

重みつきUnion-Find木を解説

これを解こうとしてできなかったのでまとめた。 judge.u-aizu.ac.jp 重み付きUnion-Find 英語名はよくわかんなくてweighted union-find とか weighted union heuristic、weighted disjoint set dataみたいに言われてるっぽい。Union-Find木に「あるノードか…

macで画面キャプチャするときメインディスプレイ以外を撮りたい人のためのAppleScript・Automater

tumblrやtwitterで洋画字幕のおもしろキャプチャとか流れてくるのが面白いので真似っこしてストックしている。PC・macで動画を見るときは21インチモニタにつないで観ているのだが、ここぞという場面で画面を止めて⌘+shift+3するとすべてのスクリーンでキャプ…

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 =…

vagrant + virtualbox 事始

IaaSを調べてる一環です。

特異メソッドにしたいだけ、ならば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, …

mkdirで連番ディレクトリの作成

あらすじ 直近のABC107で1完だった。酒が入っていた&&出先で適当に暇つぶしのつもりだった&&時間が30分ほどしかなかったとはいえ、半年ほどろくにコードを書いてないだけでこれほどカスに成り果ててしまった。とてもかなしいのでAOJ Introduction fungosを…

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

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

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

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

scdlでLikeしたプレイリストをとってくる(こともできる)

ふつうにscdl -l https://soundcloud.com/userID -fとかやると、Likeしたプレイリストはとれず、なぜか先頭の曲だけ落ちるんですが、soundcloud APIの仕様ぽいので諦めてました。 or3.hatenablog.com 自分のアカウントからは/setsで見れるので、各プレイリス…

Rubocop使ってみる

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

Ruby事始

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

さくらvps+debian+nginx+httpsでVirtualHost

さくらvpsの一番安いやつに入れていきます。 Debianを入れる&&設定 nginx入れる IPアドレスで接続してみる ドメインでアクセスしてみる nginxってどんな仕組みなのか 設定を確認してみる VirtualHost設定 別ドメイン登録 https化 (必須ではないけどpythonを…

Goでスライスの任意のインデックスに挿入

go

ちなみに「任意のインデックスを削除」はこれでやってます。 or3.hatenablog.com 実装 package main import "fmt" func main(){ n := []int{1, 2, 3,} incert_target := 9999 intint := make([][]int, 0) for i:=0; i

Goで順列を辞書順で

スライスのポインタで渡すところとスライスのコピーとスライスの任意のインデックスの要素を消すっていう実装が頭まわりませんでした… 実装 package main import "fmt" func main(){ test := []int{1, 2, 3, 4} perms := permuration(test, 3) fmt.Println("…