google-meme-code-2017/input.py

47 lines
1.4 KiB
Python
Raw Normal View History

2017-02-23 19:09:48 +01:00
#!/usr/bin/python3
import sys
filename = sys.argv[1]
with open(filename) as file:
text = file.readlines()
tokenised = [line.strip().split() for line in text]
2017-02-23 19:55:41 +01:00
videoCount = int(tokenised[0][0])
endpointCount = int(tokenised[0][1])
requestDescriptionCount = int(tokenised[0][2])
cacheCount = int(tokenised[0][3])
cacheSize = int(tokenised[0][4])
2017-02-23 19:09:48 +01:00
2017-02-23 20:05:34 +01:00
videoSizes = [int(video) for video in tokenised[1]]
2017-02-23 19:46:13 +01:00
endpointDatacenterLatencies = []
endpointCacheLatencies = []
i = 2
2017-02-23 19:55:41 +01:00
for endpoint in range(0, endpointCount):
datacenterLatency = int(tokenised[endpoint + i][0])
endpointDatacenterLatencies.append(datacenterLatency)
2017-02-23 19:46:13 +01:00
endpointCacheLatencies.append({})
2017-02-23 19:55:41 +01:00
endpointCacheCount = int(tokenised[endpoint + i][1])
for cache in range(0, endpointCacheCount):
cacheId = int(tokenised[endpoint + 1 + cache + i][0])
cacheLatency = int(tokenised[endpoint + 1 + cache + i][1])
2017-02-23 19:46:13 +01:00
endpointCacheLatencies[endpoint][cacheId] = cacheLatency
2017-02-23 19:55:41 +01:00
i += endpointCacheCount
2017-02-23 19:46:13 +01:00
2017-02-23 19:55:41 +01:00
i += endpointCount
2017-02-23 19:46:13 +01:00
requestDescriptions = []
2017-02-23 19:55:41 +01:00
for video in range(0, videoCount):
2017-02-23 19:46:13 +01:00
requestDescriptions.append({})
2017-02-23 19:55:41 +01:00
for requestDescription in range(0, requestDescriptionCount):
2017-02-23 19:46:13 +01:00
video = int(tokenised[i + requestDescription][0])
endpoint = int(tokenised[i + requestDescription][1])
requestCount = int(tokenised[i + requestDescription][2])
requestDescriptions[video][endpoint] = requestCount