Skip to content

Instantly share code, notes, and snippets.

@yamaimo
yamaimo / snapshot.rb
Created July 26, 2020 13:31
Simple Snapshot Script
#!/usr/bin/env ruby
require 'fileutils'
USAGE =<<END_OF_USAGE
$ ./snapshot <target>.<ext>
Save snapshot of taget into HISTORY_DIR/<target>-yyyymmdd.<ext>
END_OF_USAGE
# 設定 --------------------
@yamaimo
yamaimo / stairs.rb
Last active June 1, 2019 02:41
階段昇降
# 毎日『m段上ってn段下がる』を繰り返したら、x日目にd段目に初めて着いた。
# xをd,m,nで表せ。
# 文字はすべて正の整数で、m>nとする。
# https://twitter.com/hyuki/status/1134018952416321536
class Stairs
def initialize(dest, up, down)
@dest = dest
@up = up
@down = down
@yamaimo
yamaimo / AlphaBetaCom.swift
Last active August 29, 2015 14:23
YWF with Swift
public class AlphaBetaCom: Player {
private var color: Board.Color
private lazy var opponent: Board.Color = self.color.opponent
private var depth: Int
public init(color: Board.Color, depth: Int = 3) {
self.color = color
self.depth = depth
}
#!/usr/bin/env ruby
require_relative "board"
require_relative "game"
module YWF
class AlphaBetaCom
def initialize(color, depth=3)
@color = color
@opponent = (color == Board::BLACK) ? Board::WHITE : Board::BLACK
module YWF
class Board
ROW_MIN = 1
ROW_MAX = 9
COL_MIN = 1
COL_MAX = 9
WALL = -1
EMPTY = 0
BLACK = 1
@yamaimo
yamaimo / ruby-nicovideo-dl.rb
Created May 28, 2015 04:10
NicovideoDownloader with Ruby (improved)
#!/usr/bin/env ruby
#----
# ruby-nicovideo-dl.rb
#----
# [Set up]
# 1. Install Netrc gem
# Use gem command.
#
# $ gem install netrc
@yamaimo
yamaimo / ruby-nicovideo-dl-mini.rtmp.rb
Created May 16, 2015 01:41
NicovideoDownloader-mini with Ruby (RTMP support)
#!/usr/bin/env ruby
require 'netrc'
require 'net/http'
require 'net/https'
require 'cgi'
LoginURI = URI.parse("https://secure.nicovideo.jp/secure/login?site=niconico")
LoginPostFormat = "current_form=login&mail=%s&password=%s&login_submit=Log+In"
@yamaimo
yamaimo / ruby-nicovideo-dl-mini.rb
Last active August 29, 2015 14:21
NicovideoDownloader-mini with Ruby
#!/usr/bin/env ruby
require 'netrc'
require 'net/http'
require 'net/https'
require 'cgi'
LoginURI = URI.parse("https://secure.nicovideo.jp/secure/login?site=niconico")
LoginPostFormat = "current_form=login&mail=%s&password=%s&login_submit=Log+In"
@yamaimo
yamaimo / ruby-nicovideo-dl-mini.bad.rb
Last active August 29, 2015 14:21
NicovideoDownloader-mini with Ruby (wrong version)
#!/usr/bin/env ruby
require 'netrc'
require 'net/http'
require 'net/https'
require 'cgi'
LoginURI = URI.parse("https://secure.nicovideo.jp/secure/login?site=niconico")
LoginPostFormat = "current_form=login&mail=%s&password=%s&login_submit=Log+In"
@yamaimo
yamaimo / markdown_cheat_sheet.txt
Last active October 2, 2017 11:20
Markdown Cheat Sheet in Hatena Blog
目次
==========
- 見出し
- 改行と段落
- 強制改行
- 段落
- テキスト修飾
- 強調
- 打ち消し線