All pastes #24049 Raw Edit

Unnamed

public python v1 · immutable
#24049 ·published 2005-09-27 19:03 UTC
rendered paste body
from sys import stdinfrom decimal import *def main():	getcontext().rounding = ROUND_HALF_UP # 0.5 rundes til 1	n = int(stdin.readline())	nabomatrise = [None] * n # rader	tK = 0	for i in xrange(0, n):		nabomatrise[i] = [False] * n # kolonner		linje = stdin.readline()		for j in xrange(0, n):			if linje[j] == '1':				tK +=1				nabomatrise[i][j] = True	for startnoden in stdin:				noder = n		kanter = tK				nodeIkkeBesokt = []		nodeIkkeBesokt = [True] * n				ko = []				startnode = int(startnoden)		ko.append(startnode)		nodeIkkeBesokt[startnode] = False				while(len(ko) > 0):						node = ko.pop()			noder -= 1						for i in xrange(0,n):				if nabomatrise[i][node]:					kanter -=1				if nabomatrise[node][i]:					if nodeIkkeBesokt[i]:						ko.append(i)						nodeIkkeBesokt[i] = False								if noder == 0:			print "0.000"		else:			print (Decimal(kanter) / Decimal(noder**2)).quantize(Decimal('0.001'))main()