Skip to content

Instantly share code, notes, and snippets.

@yukunlin
yukunlin / version_check.py
Last active August 29, 2015 14:16
Check version of dependencies
import numpy
import scipy
import matplotlib
import platform
import sklearn
import sys
print 'python:', sys.version
print 'numpy:', numpy.__version__
print 'scipy:', scipy.version.full_version
@yukunlin
yukunlin / earth_view_download.py
Last active October 10, 2015 10:04
Scrape Google Earth View web gallery for to download all images
import requests
import multiprocessing as mp
url = 'http://earthview.withgoogle.com/download/'
def download_image(n):
try:
f = '%0.4d' % n + '.jpg'
r = requests.get(url+f)
@yukunlin
yukunlin / countdown_solver.py
Last active April 19, 2016 05:23
Find the solution to countdown problem, original and generalized version
from fractions import Fraction
from multiprocessing import Process, Pipe
from itertools import izip
class Operations:
# Generalized version that allows for any intermediate values
generalized_preconditions = [
lambda target, num: True, # num + (target - num)
lambda target, num: num != 0, # num * (target / num)
@yukunlin
yukunlin / peg_solitaire_solver.py
Last active June 18, 2016 10:45
Use back tracking to solve peg solitaire (English board)
import sys
class PegSolitaireBoard:
"""Represents a peg solitaire board
"""
def __init__(self):
"""Constructor
Returns:
@yukunlin
yukunlin / sudoku_solver.c
Last active January 26, 2020 14:38
Sudoku solver, gcc sudoku_solver.c -O2 -o sudoku_solver && echo '..6.7......9.....35..163...38...27.6.......8.7.....2596..5.71...5.....3.....218..' | ./sudoku_solver
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include "sudoku_solver.h"
int fill(sudokuGrid grid, int row, int column, int entry)
{
for (int i = 0; i < DIMENSIONS; i++) {