Skip to content

Instantly share code, notes, and snippets.

View xiaodaigh's full-sized avatar

evalparse xiaodaigh

View GitHub Profile
@xiaodaigh
xiaodaigh / 0_code.jl
Last active August 30, 2020 14:29
Fast implementation of `nuniuqe` in a SORTED vector
x = rand(1:1_000_000, 1_000_000_000)
using SortingLab
fsort!(x)
function unroll_loop(x)
count = 0
@inbounds count += x[1] != x[2]
@inbounds count += x[2] != x[3]
@xiaodaigh
xiaodaigh / gist:0326a03d97a0b7ded0aa88d4aeeef812
Last active January 17, 2021 23:29
2021 Chunlan Cup simulation from quarters
struct Player
name::String
rating::Int
end
struct Match
best_of::Int
end
@xiaodaigh
xiaodaigh / nongshimcup.jl
Last active February 21, 2021 12:07
Nongshim Cup simulation
using Revise
includet("utils.jl")
function remove_player!(team)
if length(team) == 1
team.players = []
else
team.players = team.players[2:end]
end
team
@xiaodaigh
xiaodaigh / 0_get_data.jl
Created June 4, 2021 12:50
Tang Dynasty poetry
using Gumbo, Cascadia, HTTP
using Serialization
urls= ["https://www.shicimingju.com/shicimark/tangshisanbaishou.html"]
urls = vcat(urls, ["https://www.shicimingju.com/shicimark/tangshisanbaishou_$(i)_0__0.html" for i in 2:16])
function get_chars(poem::Vector{<:AbstractString})::Set{Char}
mapreduce(Set, union, poem)
end
@xiaodaigh
xiaodaigh / gist:46e3edad9c72dd10ae415e08ac2953c3
Created October 20, 2021 12:50
Simple demonstration of writing Parquet to S3
# to run this firstly set up the MinIO server
# on Windows download this https://dl.min.io/server/minio/release/windows-amd64/minio.exe
# download("https://dl.min.io/server/minio/release/windows-amd64/minio.exe")
# to run minio make sure the executable is in the PATH
# then run
# ;minio.exe server /path/to/minio/data
# e.g. minio.exe server c:/minio-data/
using Minio, Parquet, Parquet2, DataFrames, AWSS3