Skip to content

Instantly share code, notes, and snippets.

# http://slobin.livejournal.com/515819.html
import math
def interval(k, n):
# http://en.wikipedia.org/wiki/Binomial_proportion_confidence_interval
# Wilson score interval
z = 1.96 #95% confidence
p = 1.0*k / n
@dobrokot
dobrokot / random_baskets.py
Created June 24, 2015 16:12
random basket number of elements variance
import random
def main():
basket = [0]*5
rand = random.randrange
for i in xrange(27777777):
basket[rand(0, 5)%5] += 1
for v in basket:
// Determine support properties
(function( xhr ) {
jQuery.extend( jQuery.support, {
ajax: !!xhr,
cors: !!xhr && ( "withCredentials" in xhr )
});
})( jQuery.ajaxSettings.xhr() );
@dobrokot
dobrokot / may_be_usage.cpp
Created April 10, 2012 09:02
Shows usage of may_be.hpp
#include "may_be.hpp"
#include <iostream>
struct Point { //тип, над которым мы будем эксперементировать.
float x, y;
Point(float x, float y): x(x), y(y) {}
Point(): x(0), y(0) {}
};
@dobrokot
dobrokot / may_be_usage.cpp
Created April 10, 2012 09:00
Shows usage of may_be.hpp
#include "may_be.hpp"
#include <iostream>
struct Point { //тип, над которым мы будем эксперементировать.
float x, y;
Point(float x, float y): x(x), y(y) {}
Point(): x(0), y(0) {}
};
@dobrokot
dobrokot / may_be.hpp
Created April 10, 2012 08:45
nullable/optinal/MayBe - store some value or empty.
#ifndef MAY_BE_HEADER
#define MAY_BE_HEADER
#include <string.h>
#include <memory>
#include <assert.h>
///для того, что бы удобней было вернуть из функции пустое или дефолтное значение, например
/** \code
MayBe<Point> f() {
@dobrokot
dobrokot / may_be.hpp
Created April 10, 2012 08:52
nullable/optinal/MayBe - store some value or empty
#ifndef MAY_BE_HEADER
#define MAY_BE_HEADER
#include <string.h>
#include <memory>
#include <assert.h>
///для того, что бы удобней было вернуть из функции пустое или дефолтное значение, например
/** \code
MayBe<Point> f() {
#include <boost/shared_ptr.hpp>
#include <iostream>
struct T {
boost::shared_ptr<MayBe<T> > next;
int i;
T() { i = 10; }
};
@dobrokot
dobrokot / gist:2470067
Created April 23, 2012 10:07
compare set contains element on strings of ~tens symbols
import re
def f1(c):
return c in ''' abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!"\\'()*-.:<>[]^`{|}~'''
ALLOWED = re.compile('''[ a-zA-Z0-9!"'()*.:<>^`{|}~\\\[\]-]''')
def f2(c):
return bool(re.match(ALLOWED, c))
@dobrokot
dobrokot / knight_random_walk.py
Created May 9, 2012 12:17
knight random walk
# Ivan Dobrokotov, dobrokot 'at' gmail.com
def calc_moves(x, y):
result = []
for dx, dy in [(1, 2), (2, 1), (-1, 2), (-2, 1), (-1, -2), (-2, -1), (1, -2), (2, -1)]:
nx, ny = (x + dx, y+dy)
if 0 <= nx < 8 and 0 <= ny < 8:
result.append((nx, ny))
return result