
import sys
from photos import photos

def chrono_knn( n, keyword ):
	ans = []
	neighbors = [None]*n
	for photo in photos:
		# test
		num = 0
		den = 0
		for neighbor in neighbors:
			if neighbor:
				if keyword in neighbor.keywords:
					num = num + 1
				den = den + 1

		if den and (float(num)/den) >= .5:
			prediction = 1
		else:
			prediction = 0

		if keyword in photo.keywords:
			actual = 1
		else:
			actual = 0

		ans = ans + [(prediction,actual)]

		#train
		neighbors = neighbors[1:] + [photo]
	return ans

def evaluate(output):
	a,b,c,d = 0,0,0,0
	for line in output:
		prediction, actual = line
		if actual:
			if prediction:
				a = a + 1
			else:
				b = b + 1
		else:
			if prediction:
				c = c + 1
			else:
				d = d + 1
	recall = float(a)/float(a+b)
	precision = float(a)/float(a+c)
	return (recall,precision)

ps = []
rs = []
for n in range(1,11):
	p,r = evaluate(chrono_knn(n,sys.argv[1]))
	ps = ps + [p]
	rs = rs + [r]

line = [sys.argv[1]] + ps + rs
print '\t'.join([str(x) for x in line])

