Skip to content

Instantly share code, notes, and snippets.

View bromne's full-sized avatar

bromne

View GitHub Profile
@bromne
bromne / js-test.html
Created January 6, 2021 17:22
2005-12-04
<html><head><title>test</title>
<script language="JavaScript">
pa=new Array();
page=new Array();
function changeDesign(cno){
pa[0]=document.getElementById('page[0]');
pa[1]=document.getElementById('page[1]');
pa[2]=document.getElementById('page[2]');
pa[0].style.display='none';
pa[1].style.display='none';

白魔道士の回復アクションの回復力と消費 MP

アクション名 回復力 消費 MP 回復力(%) 回復力/MP(%)
ケアル 450 400 100.00 100.00
メディカ 300 1000 66.66 26.66
ケアルラ 700 1000 155.55 62.22
リジェネ 1200 500 266.66 213.33
ケアルガ 550 1500 122.22 32.59
メディカラ 800 1300 177.77 54.70
const VWL = new Set(["A", "E", "I", "O", "U"]);
function abbr(name) {
if (name.length < 3)
return null;
const NAM = name.toUpperCase();
const HEA = NAM[0];
const TAI = Array.from(NAM.substr(1));
const FLT = TAI.filter(CHR => !VWL.has(CHR)).join("");
if (FLT.length >= 2)
@bromne
bromne / hasFooOrBar.js
Last active May 31, 2018 10:59
n × 2 and 2 × n
// s は、文字列の平均的な長さ
// n × 2
// => 変数確保: 2, 整数比較: 2n, 再代入: 2n, 配列要素取得: 2n, 文字列比較: 2sn
const hasFooOrBar = function(items) {
// 変数確保: 1, 整数比較: n, 再代入: n
for (let i = 0; i < items.length; i++) // * n
// 配列要素取得: 1 (* n), 文字列比較: s (* n)
if (items[i] === "foo");
return true;
@bromne
bromne / heap_sort.js
Last active March 4, 2018 10:26
ソートアルゴリズム
let parent = i => Math.floor(i - 1);
let left = i => (i + 1) * 2 - 1;
let right = i => (i + 1) * 2;
let swap = function (items, i, j) {
let temp_i = items[i];
items[i] = items[j];
items[j] = temp_i;
};
let get_largest_node = function (items, i, heap_size) {
@bromne
bromne / NestedParallelStream.scala
Last active November 17, 2017 00:47
ネストされた並列ストリームでは、ScalaのストリームとJavaのストリームで挙動が異なる
import java.util.stream.IntStream
object NestedParallelStream {
def main(args: Array[String])]: Unit = {
iterateScalaStream()
iterateJavaStream()
}
def iterateScalaStream(): Unit = {
Stream.range(0, 100)
@bromne
bromne / gist:9cc125bb1389f1b459a6c4a040b66ad0
Created October 26, 2017 06:18
帰納的可変長多相型(recursive variable-length polymorphic type)
class Router<T...> {
portions: [String];
when (T) {
case <>: {
}
otherwise: {
leading: Router<* T.init>;
parser: Parser<T.last>;
}
@bromne
bromne / tailcall.js
Created October 24, 2017 03:59
末尾呼び出し最適化
// 参考
// 『Java による関数型プログラミング』7章
let TailRec = {
done: function(result) {
return {
complete: true,
result: result
};
},
@bromne
bromne / linq-type-unsafe.cs
Created December 28, 2016 05:52
Linq: type-unsafe
using System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
public class Test
{
public static void Main()
{
IEnumerable values = new List<string>() { "foo", "bar" };
#!/usr/bin/perl -w
# src/htdocs 下の PHP ファイルのパスを取得して表示します。
# ファイル名が php-files.txt に含まれているもののみ取得します。
# @files は「foo.php」のような PHP ファイル名のリスト,行区切り
open FILE, '<', 'php-files.txt';
chomp(my @files = <FILE>);
# *.php