Skip to content

Instantly share code, notes, and snippets.

@cocodrips
cocodrips / sortByValue.coffee
Created January 19, 2014 08:04
javascript 連想配列をvalueの値でソートする
sortByValue: (data)->
z = []
for k,v of data
z.push([v, k])
z.sort((a, b)->
if a[0] < b[0]
return -1
if a[0] > b[0]
return 1
return 0
@cocodrips
cocodrips / sortKeysByValue.coffee
Created January 19, 2014 08:11
javascript 連想配列をvalueの値でソートしてkeyを返す
sortByValue:(data, reverse)->
z = []
for k,v of data
z.push([v, k])
z.sort((a, b)->
if a[0] < b[0]
return -1
if a[0] > b[0]
return 1
@cocodrips
cocodrips / quickSort.py
Created January 20, 2014 18:25
Pythonでベーシックなクイックソート( ・ω・)ノ
def quickSort(data, left, right):
index = partition(data, left, right)
if left < index - 1:
quickSort(data, left, index - 1)
if index < right:
quickSort(data, index, right)
def partition(data, left, right):
pivot = data[(left + right) / 2]
while left < right:
@cocodrips
cocodrips / 225Div2B.py
Created January 20, 2014 18:40
CodeForces 225 Div2 B問題 テストケース3で落ちるー(´;ω;`)
class Solve:
ans = []
def __init__(self,n,m,k,data):
self.n = n
self.m = m
if k == 1:
data = [[dd * -1 for dd in d] for d in data]
for g in xrange(self.n):
self.quickSort(data, g, 0, self.m-1)
print len(self.ans)
@cocodrips
cocodrips / 255Div2BBubble.py
Created January 20, 2014 19:28
CodeForces 225 Div2 B TLEなバブルソートver.ケース3は通るけど最大ケースが無理ぽ
def solve(n,m,k,data):
ans = []
if k == 1:
data = [[dd * -1 for dd in d] for d in data]
for i in xrange(n):
isSorted = False
while not isSorted:
swapCnt = 0
for j in xrange(m - 1):
@cocodrips
cocodrips / AlienAndGame.py
Last active January 4, 2016 00:19
SRM 605 Div2 med
class AlienAndGame:
def getNumber(self, board):
arr = []
for r in board:
arr.append(list(r))
rlen = len(arr)
clen = len(arr[0])
N = min(rlen, clen)
@cocodrips
cocodrips / kmeans.coffee
Created January 24, 2014 04:44
K-means in CoffeeScript
class ClusteringObj
constructor: (@coordinate, @clusterId)->
class @Centroid
constructor: (keys)->
@num = 0
@coordinate = {}
for k in keys
@coordinate[k] = 0
@cocodrips
cocodrips / prime_decomposition.py
Last active August 29, 2015 13:55
素因数分解
def prime_decomposition(n):
i = 2
table = []
while i * i <= n:
while n % i == 0:
n /= i
table.append(i)
i += 1
if n > 1:
table.append(n)
@cocodrips
cocodrips / is_prime.py
Last active August 29, 2015 13:55
素数判定
def is_prime(n):
i = 2
while i * i <=n:
if n % i == 0:
return False
i += 1
return True
@cocodrips
cocodrips / prime_table.py
Last active August 29, 2015 13:55
素数テーブル
def prime_table(n):
list = [True for _ in xrange(n + 1)]
i = 2
while i * i <= n:
if list[i]:
j = i + i
while j <= n:
list[j] = False
j += i
i += 1