Return to problem list

2017-1B Problem A

Final solution

cmd.go:
save   open on GitHub
// package, import, etc...

func start() {
  // read T, repeat test() T times...
}

func test() {
	var D, N int
	mustReadLineOfInts(&D, &N)
	var maxSpeed float64 = -1
	for i := 0; i < N; i++ {
		var K, S int
		mustReadLineOfInts(&K, &S)
		t := (float64(D) - float64(K)) / float64(S)
		speed := float64(D) / t
		if maxSpeed == -1 || maxSpeed > speed {
			maxSpeed = speed
		}
	}
	fmt.Fprintf(stdout, "%.12f\n", maxSpeed)
}

// boilerplate omitted...

Sample test cases given in question

sample.in:
save   open on GitHub
3
2525 1
2400 5
300 2
120 60
60 90
100 2
80 100
70 10