Skip to content

Instantly share code, notes, and snippets.

View minimum_spanning_tree.py
"""
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=203
"""
import math
def prim(n, edges):
g = [[] for i in range(n)]
for u, v, w in edges:
@irachex
irachex / RestartmDNSResponder
Created Dec 16, 2011
Restart mDNSResponder if it's not responsible (just for MacOS) Run this script as root via cron.
View RestartmDNSResponder
#!/usr/bin/env python
""" Restart mDNSResponder if it's not responsible (just for MacOS)
Run this script as root via cron.
* * * * * /Users/xupeng/bin/check_mDNSResponder.py
"""
import os
@irachex
irachex / doubanRefresh.js
Created Dec 23, 2011
auto refresh douban shuo.use it when you want to coding and checking douban at the same time.usage: add to bookmark.
View doubanRefresh.js
javascript:if(typeof(flag)=="undefined"||flag==false){flag=true;timer=window.setInterval(function(){$(".stream-new").click();},4000);}else{flag=false;window.clearInterval(timer);}
@irachex
irachex / onlylz.js
Created Dec 30, 2011
豆瓣只看楼主
View onlylz.js
javascript:(function(){u=$(".topic-content .user-face a").attr("href");a=window.location.href.match(/\/(\d+)\//)[1];$("li.clearfix:not(:has(h4 a[href="+u+"]))").hide();h=$(".paginator");j=h.find(">a:last").text();k=1;$a=new Array;c=new Array;for(i=1;i<j;i++){$.ajax({url:"/group/topic/"+a+"/?start="+(i*100),success:function(data){d=$(data);n=d.find(".thispage").text()-1;$a[n]=d.find("li.clearfix:has(h4 a[href="+u+"])");c[n]=d.find(".paginator").html();if(n==k){do{$a[k].appendTo($(".topic-reply"));h.html(c[k]);k++;}while($a[k]!=undefined);}}});}})()
@irachex
irachex / CORSServer.py
Created May 8, 2012
CORS Server that supports Access-Control-Allow-Origin
View CORSServer.py
#!/usr/bin/python
import SimpleHTTPServer
import SocketServer
import time
import os
import socket
class TestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
@irachex
irachex / PriorityQueue.py
Created Oct 20, 2012
PriorityQueue implements in Python
View PriorityQueue.py
from collections import deque
class PriorityQueueNode(object):
def __init__(self, id, value):
self.id = id
self.value = value
class PriorityQueue(object):
def __init__(self, k):
self.q = deque()
@irachex
irachex / SegmentTree.py
Created Oct 20, 2012
SegmentTree in Python
View SegmentTree.py
INF = 999999999999999
class SegTreeNode(object):
def __init__(self, left, right, data):
self.left = left
self.right = right
self.data = data
self.left_child = None
self.right_child = None
@irachex
irachex / tarjan.py
Created Oct 20, 2012
Tarjan (find articulation vertex and bridges in graph) non-recursive (use stack) in Python
View tarjan.py
def tarjan(N, S, T, edges):
cnt = 0
bridges = []
visit = [0 for i in range(N)]
low = [N + 1 for i in range(N)]
ret = [False for i in range(N)]
q = [0 for i in range(N + 1)]
q[0] = (S, -1, -1)
top = 0
while top >= 0:
@irachex
irachex / TinyHTTPProxy.py
Created Nov 9, 2012
Tiny HTTP Proxy. Usuage: python TinyHTTPProxy.py -p 11028
View TinyHTTPProxy.py
#!/usr/bin/python
__doc__ = """Tiny HTTP Proxy.
This module implements GET, HEAD, POST, PUT and DELETE methods
on BaseHTTPServer, and behaves as an HTTP proxy. The CONNECT
method is also implemented experimentally, but has not been
tested yet.
Any help will be greatly appreciated. SUZUKI Hisao
@irachex
irachex / getDistanceFromLatLon.coffee
Last active Dec 10, 2015
calculate distance between two latitude-longitude points. using Haversine formula http://en.wikipedia.org/wiki/Haversine_formula
View getDistanceFromLatLon.coffee
getDistanceFromLatLonInKm = (lat1, lon1, lat2, lon2)->
R = 6371 # Radius of the earth in km
dLat = deg2rad(lat2 - lat1) # deg2rad below
dLon = deg2rad(lon2 - lon1)
a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *
Math.sin(dLon/2) * Math.sin(dLon/2)
c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a))
d = R * c # Distance in km
return d