Rust types reference
Prelude
std::borrow::ToOwned
std::boxed::Box
std::clone::Clone
std::cmp::{PartialEq, PartialOrd, Eq, Ord}
std::convert::{AsRef, AsMut, Into, From}
std::default::Default
def combos(items, k, s = 0, combo = []) | |
return [combo] if k == 0 | |
(s .. items.size - k).flat_map do |i| | |
combos(items, k - 1, i + 1, combo + [items[i]]) | |
end | |
end | |
combos([:a, :b, :c, :d, :e, :f], 3).each do |combo| | |
p combo |
input_path = File.expand_path('../input.txt', __FILE__) | |
masses = File.read(input_path).lines.map(&:to_i) | |
def fuel(mass) | |
(mass / 3.0).floor - 2 | |
end | |
p masses.reduce(0) { |s, m| s + fuel(m) } | |
def required_fuel(init) |
std::borrow::ToOwned
std::boxed::Box
std::clone::Clone
std::cmp::{PartialEq, PartialOrd, Eq, Ord}
std::convert::{AsRef, AsMut, Into, From}
std::default::Default
require_relative "./base" | |
require_relative "../diff" | |
require_relative "../rev_list" | |
module Command | |
class Blame < Base | |
def run | |
@lines = [] | |
@commits = [] |
require "set" | |
mods = Class.ancestors + | |
Method.ancestors + | |
UnboundMethod.ancestors | |
reserved = %i[ | |
== | |
=== | |
=~ |
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o---o o o---o o o o o o o o o o o o o o o o o o o o | |
| | | | | |
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o---o--- |
#!/bin/bash | |
cd ~/src | |
dir="git-long-uninteresting-branch" | |
git init $dir > /dev/null | |
cd $dir | |
export GIT_COMMITTER_DATE="1600000000" |
.................................................................................................|...............................................................#....#.................. | |
........#........................................................................................|...............................................................#....#.................. | |
........#.............#..........................................................................|...............................................................#....#.................. | |
........#.............#..........................................................................|...............................................................#....#.................. | |
........#.............#..........................................................................|...#....#......................................................#....#.................. | |
........#.............#....................................................................... |
module Pack | |
module Numbers | |
module VarIntLE | |
def self.write(size, shift) | |
bytes = [] | |
mask = 2 ** shift - 1 | |
until size <= mask | |
bytes << (0x80 | size & mask) |
class SuperPermutation | |
CHARS = ('a'..'z').map(&:to_sym) | |
def initialize(size) | |
@size = size | |
@chars = CHARS.take(@size) | |
@used = {} | |
@index = Hash.new { |h, k| h[k] = [] } | |
@chars.permutation.each do |seq| |