from sys import stdin def subgraftetthet(nabomatrise, startnode): n = len(nabomatrise) besokt = [False] * n besok(nabomatrise, startnode, besokt) noder = 0 kanter = 0 for node in range(0, n): if besokt[node] == False: noder += 1 for nabonode in range(0, n): if nabomatrise[node][nabonode] == True and besokt[nabonode] == False: kanter += 1 if noder == 0: return 0.0 else: return float(kanter) / float(noder**2) def besok(nabomatrise, node, besokt): besokt[node] = True for nabonode in range(0, len(nabomatrise)): if nabomatrise[node][nabonode] == True and besokt[nabonode] == False: besok(nabomatrise, nabonode, besokt) def main(): n = int(stdin.readline()) nabomatrise = [None] * n # rader for i in range(0, n): nabomatrise[i] = [False] * n # kolonner linje = stdin.readline() for j in range(0, n): nabomatrise[i][j] = (linje[j] == '1') for linje in stdin: start = int(linje) print "%.3f" % (subgraftetthet(nabomatrise, start) + 1E-12) main()