Skip to content

Instantly share code, notes, and snippets.

@tamanugi
tamanugi / tokenizer.exs
Last active August 21, 2022 01:40
Tokenized using by Trie-Tree
defmodule Trie do
def build(binaries) when is_list(binaries) do
binaries
|> Enum.reduce(%{}, &_insert(&2, &1))
end
defp _insert(trie, binary) when is_binary(binary) do
_insert(trie, String.codepoints(binary))
end
$ iex -S mix
iex(1)> B.new_hoge
:fuga
@tamanugi
tamanugi / K8sService.java
Created August 10, 2021 03:06
kubernetes-client/java Trial code. create yaml & create deployment via API.
package jp.co.monocrea.monolib4iac.domain.eks;
import com.google.common.io.Files;
import io.kubernetes.client.openapi.ApiClient;
import io.kubernetes.client.openapi.ApiException;
import io.kubernetes.client.openapi.apis.AppsV1Api;
import io.kubernetes.client.openapi.models.V1Deployment;
import io.kubernetes.client.openapi.models.V1DeploymentBuilder;
import io.kubernetes.client.openapi.models.V1LabelSelectorBuilder;
import io.kubernetes.client.openapi.models.V1PodTemplateSpec;
defmodule PowerfulDiscountTickets.Main do
def read_array() do
IO.read(:line) |> String.trim() |> String.split(" ") |> Enum.map(&String.to_integer/1)
end
def main() do
[_, m] = read_array()
as = read_array() |> Enum.sort(:desc)
solve(as, m)
@tamanugi
tamanugi / sieve_of_eratosthenes.exs
Last active November 19, 2020 12:25
エラトステネスの篩 for 素因数分解
defmodule SieveOfEratosthenes do
def run(n) do
sqrt = :math.sqrt(n) |> floor()
{time, d} = :timer.tc(SieveOfEratosthenes, :init_d, [n])
IO.inspect(time, label: "init d time")
# 偶数を飛ばす
Stream.iterate(13, &(&1 + 2))
@tamanugi
tamanugi / ex_ahocora.ex
Last active September 28, 2020 15:59
ex_ahocora.ex
defmodule State do
defstruct id: 0, next: %{}, failure: 0, outputs: []
def update_failure(%State{} = state, new_id) do
Map.update!(state, :failure, fn _ -> new_id end)
end
def add_next(%State{} = state, character, id) do
Map.update!(state, :next, &Map.put(&1, character, id))
end
@tamanugi
tamanugi / EvolutiosModule.scala
Created February 27, 2020 15:01
Playframework Custom Evolutions
import java.io.{ByteArrayOutputStream, Closeable, IOException, InputStream}
import javax.inject._
import play.Logger
import play.api.Environment
import play.api.db.evolutions._
import play.api.inject._
import play.api.libs.Collections
import scala.io.Codec
@tamanugi
tamanugi / file0.txt
Last active January 29, 2018 01:37
[メモ]CentOS7にGitlab-runnerとDockerを構築 ref: https://qiita.com/tamanugi/items/fedbd60f8b1b907727b4
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
@tamanugi
tamanugi / zundoko.exs
Last active November 28, 2017 11:36
ズンドコきよし with Elixir
defmodule Zundoko do
@zun "ズン"
@doko "ドコ"
@kiyoshi "キ ・ ヨ ・ シ!"
def run() do
gen_zundoko()
|> show_list
|> call
@tamanugi
tamanugi / app.js
Last active December 24, 2018 02:06
Puppeteerを使って指定したDOMのみのスクリーンショットを取得する ref: https://qiita.com/tamanugi/items/8cc1266265457f13b9ea
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({headless: true});
const page = await browser.newPage();
const targetElementSelector = '#tw-container'
await page.goto('https://google.co.jp')
await page.type('pupperteer 翻訳')