func parse(pr *codejam.Problem, testCaseIndex int) *data { n := pr.ReadInt() d := &data{ num: n, testIndex: testCaseIndex, } return d }
func parse(pr *codejam.Problem, testCaseIndex int) *data { d := &data{ testIndex: testCaseIndex, } n := uint(pr.ReadInt()) m := 1 << n d.xs = make([]int, m) d.xs = pr.ReadInts(d.xs) return d }
func parse(pr *codejam.Problem, testCaseIndex int) *data { d := &data{ testIndex: testCaseIndex, } n := pr.ReadInt() d.iPos = make([]vector, n) for i := 0; i < n; i++ { pr.ReadFloats(d.iPos[i][:]) } return d }
func parse(pr *codejam.Problem, testCaseIndex int) *vectorData { n := pr.ReadInt() vd := &vectorData{ xs: make([]int, n), ys: make([]int, n), testIndex: testCaseIndex, } pr.ReadInts(vd.xs) pr.ReadInts(vd.ys) return vd }
func parse(pr *codejam.Problem, testCaseIndex int) *data { d := new(data) d.testIndex = testCaseIndex n := pr.ReadInt() d.pairs = make([]pair, n) for i := 0; i < n; i++ { xs := pr.ReadInts(nil) d.pairs[i][0] = xs[0] d.pairs[i][1] = xs[1] } return d }
func parse(pr *codejam.Problem, testCaseIndex int) *data { n := pr.ReadInt() m := pr.ReadInt() d := &data{ flavors: n, customers: make([]*customer, m), customersByUnmalted: make([][]*customer, n), customersByMalted: make([][]*customer, n), testIndex: testCaseIndex, } for i := 0; i < m; i++ { nums := pr.ReadInts(nil) c := &customer{ malted: make([]int, 0, nums[0]), unmalted: make([]int, 0, nums[0]), } for j := 0; j < nums[0]; j++ { mv := nums[2*j+2] == 1 fv := nums[2*j+1] - 1 if mv { c.malted = append(c.malted, fv) d.customersByMalted[fv] = append(d.customersByMalted[fv], c) } else { c.unmalted = append(c.unmalted, fv) c.satisfied = true d.customersByUnmalted[fv] = append(d.customersByUnmalted[fv], c) } } d.customers[i] = c } return d }
func parse(pr *codejam.Problem, testCaseIndex int) *data { d := &data{ testIndex: testCaseIndex, } n := pr.ReadInt() d.vertices = make([]string, n) d.edges = make([][]int, n) for i := 0; i < n; i++ { d.vertices[i] = pr.ReadString() } for i := 0; i < n-1; i++ { edge := pr.ReadInts(nil) a, b := edge[0]-1, edge[1]-1 d.edges[a] = append(d.edges[a], b) d.edges[b] = append(d.edges[b], a) } return d }
func parse(pr *codejam.Problem, testCaseIndex int) *data { d := &data{ testIndex: testCaseIndex, } n := pr.ReadInt() d.m = make([][]byte, 2*n) for i := 0; i < 2*n; i++ { d.m[i] = make([]byte, 2*n) str := pr.ReadString() for j := 0; j < 2*n; j++ { if str[j] == '1' { d.m[i][j] = 1 } else { d.m[i][j] = 0 } } } return d }