Skip to content

Instantly share code, notes, and snippets.

View adrian17's full-sized avatar

Adrian Wielgosik adrian17

View GitHub Profile
@adrian17
adrian17 / main.cpp
Created May 25, 2014 21:24
Quadtrees
#include <cmath>
#include <vector>
#include "windows.h"
#include "lodepng.h"
#include "SDL.h"
typedef std::vector<unsigned char> Image;
@adrian17
adrian17 / main.cpp
Last active August 29, 2015 14:01
Quadtrees but not really
#include <cmath>
#include <functional>
#include <set>
#include "windows.h"
#include "lodepng.h"
#include "SDL.h"
const int MIN_RECT_SIZE = 2;
@adrian17
adrian17 / main.cpp
Last active August 29, 2015 14:07
EdgeSolver with templates
#include <iostream>
#include <vector>
#include <string>
#include <array>
#include <fstream>
using std::cout;
using std::endl;
typedef std::vector<std::array<char, 4>> Board;
@adrian17
adrian17 / main.cpp
Last active August 29, 2015 14:13
DailyProgrammer #197 Intermediate Dijikstra
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
#include <tuple>
#include <algorithm>
#include <climits>
#include <map>
#include <set>
@adrian17
adrian17 / words_game.py
Last active August 29, 2015 14:14
For /r/dailyprogrammer, Challenge 198
# [2015-01-23] Challenge #198 [Hard] Words with Enemies -- The Game!
# http://www.reddit.com/r/dailyprogrammer/comments/2tfs0b/20150123_challenge_198_hard_words_with_enemies/
from functools import lru_cache
import random
import string
@lru_cache(maxsize=1)
def load_wordlist(filename="enable1.txt"):
return open(filename).read().splitlines()
@adrian17
adrian17 / main.py
Last active August 29, 2015 14:14
numbers_cleanup
#Ugly but working
dataz="""\
_ _ _ _ _ _ _ _ _
| || || || || || || || || |
|_||_||_||_||_||_||_||_||_|
| | | | | | | | |
| | | | | | | | |
prime_sieve =: 3 : 0
sieve_size =. y
sieve =. sieve_size # 0
indices =. i. sieve_size
sieve =. 1 (0 1) } sieve
result =. ''
while. sieve_size ~: +/ sieve do. NB. while it has at least one 0
num =. {. (-. sieve) # indices NB. get first number not marked with 1
result =. result, num
divisible =. 0 = num | indices
@adrian17
adrian17 / sudoku.ijs
Created March 5, 2015 09:24
sudoku in J (translation of APL algorithm)
s44 =: 4 4 $ 0 0 0 0 0 0 2 1 3 0 0 4 0 0 0 0
box =: (] #"1 ] # ([: i. 2 # ]))
indices =: 3 : 0
yy =. {. y
a =. yy #"0 i. yy
b =. |: a
c =. a ,/"0 b
)
@adrian17
adrian17 / collatz.ijs
Last active August 29, 2015 14:17
collatz fractal in J
load 'viewmat'
gen_table =: 4 : '(0j1*(i: x)) +/ i: y'
fractal =: 1 : 0
:
x u"0 (y +~ 30000 %~ 150 gen_table 150) NB. resolution and scale, not sure how to decouple them
)
collatz =: 4 %~ 2 + (7*]) - (2+5*])* 2 o. o.
is_bounded_c =: 4 : '((0: collatz^:x) :: 1:) y' NB. collatz
@adrian17
adrian17 / contour_plot.py
Created March 18, 2015 08:43
/r/dailyprogrammer #206I on reals
import numpy as np
import matplotlib.cm as cm
import matplotlib.pyplot as plt
header, *lines = open("map2.txt").read().splitlines()
R = float(header.split()[2])
H, W = len(lines), len(lines[0])
crops = []
for y, line in enumerate(lines):
for x, c in enumerate(line):