Skip to content

Instantly share code, notes, and snippets.

@ia7ck
ia7ck / Program.fs
Last active December 31, 2020 17:11
open FParsec
let test (p: Parser<'a, unit>) (str: string) =
match run p str with
| Success (result, _, _) -> printfn "Success: %A" result
| Failure (errorMsg, _, _) -> printfn "Failure: %s" errorMsg
let plus (a: float) (b: float) = a + b
[<EntryPoint>]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>scc</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://fonts.googleapis.com/css?family=Lato:400,700" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.2.22/cytoscape.min.js"></script>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Zeta</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://cdnjs.cloudflare.com/ajax/libs/vis/4.21.0/vis.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/vis/4.21.0/vis.min.css">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>ABC108/ARC102 D</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://cdnjs.cloudflare.com/ajax/libs/svg.js/2.6.5/svg.js"></script>
<script src="./svg.path.js"></script>
<link href="https://fonts.googleapis.com/css?family=Inconsolata|Lato:400,400i" rel="stylesheet">
@ia7ck
ia7ck / main.d
Created August 25, 2018 14:19
Benchmark BinaryHeap
void main()
{
import mybinaryheap : MyBinaryHeap;
import std.container.binaryheap : BinaryHeap;
import std.container.rbtree : RedBlackTree;
import std.datetime.stopwatch : benchmark;
import std.stdio : writeln;
import std.random : Random, unpredictableSeed, uniform;
auto rnd = Random(unpredictableSeed);
@ia7ck
ia7ck / mybinaryheap.d
Last active August 25, 2018 14:16
BinaryHeap
// - Test
// dmd mybinaryheap.d -main -unittest [-cov]
// ./mybinaryheap
//
// - import
// import mybinaryheap : MyBinaryHeap
module mybinaryheap;
unittest
@ia7ck
ia7ck / sudoku.rb
Last active August 14, 2018 18:07
solve sudoku
class Sudoku
attr_accessor :table
def initialize(table)
@n, @k = 9, 3 # n=k^2
@table = table
end
def solve
def ok(i, x) # 場所iに数字xを置けるか
import std.stdio, std.string, std.conv, std.algorithm;
import std.exception, std.random, std.typecons, std.math;
import std.datetime;
auto sw=StopWatch(AutoStart.no);
class Problem{
const int N=100;
const int Q=1000;
const int TL=6000; // ms

https://twitter.com/yfba_/status/948287028415770624

問題1

増加列(Judge ver.)

概要

(1, 2, ..., n)の順列pが与えられる。pの広義増加部分列の個数はいくつか。

方針

dp[i]:=the number of increasing subsequence which ends with i-th element とする。遷移はdp[i]=sum(dp[j])+1。ただし、和はj

@ia7ck
ia7ck / ARC082F.d
Last active September 24, 2017 11:23
ARC082-F Sandglass
void main(){
import std.stdio, std.string, std.conv, std.algorithm;
import std.typecons;
int x, k;
rd(x); rd(k);
auto r=readln.split.to!(int[]);
alias Q=Tuple!(int, "t", int, "a");
auto qs=new Q[](0);
foreach(t; r) qs~=Q(t, -1);