
from math import log


def toPajek(graph, filename):
    f = open(filename,'w')
    size = len(graph)
    f.write('*Vertices '+str(size)+'\n')
    for i in range(1,size+1):
        f.write(' '+str(i)+' "'+str(i)+'"\n')
    f.write('*Edges\n')
    for i in range(size):
        for conn in graph[i]:
            f.write(' '+str(i+1)+' '+str(conn+1)+' 1\n')
    f.close()


graph = {}

n = 64
k = log(n,2)

for node in range(n):
    graph[node] = []
    for i in range(k):
        neighbour = (node + 2**i)%n
        graph[node].append(neighbour)

toPajek(graph,'chord.net')
print graph

