vollmond
By: a guest | Jul 20th, 2008 | Syntax:
Groovy | Size: 3.00 KB | Hits: 111 | Expires: Never
//SearchEngines - Google codejam
println "Usage: <command> <path to input>"
}
processData()
}
testCase++
}
trips.
add(new TripData
(depart:lineFields
[0], arrive:lineFields
[1], source:
"A"))
numTripsFromA--
} else if (numTripsFromB
> 0
) {
trips.
add(new TripData
(depart:lineFields
[0], arrive:lineFields
[1], source:
"B"))
numTripsFromB--
}
}
}
}
}
processData()
}
availA = 0
availB = 0
sortTrips()
//println "turnaround = ${turnaround} \n $trips"
curTime = trip.depart
updateTimes(curTime)
if (trip.
source == "A") {
availA--
startA++
}
} else if (trip.
source == "B") {
availB--
startB++
}
}
}
println "Case #${testCase}: ${startA} ${startB}"
}
if (addTime
(trips
[i
].
arrive, turnaround
) <= curTime
&& ! trips
[i
].
done) {
if (trips
[i
].
source == "A") {
availB++
availA++
}
}
}
}
static addTime
(time, turnaround
) {
minutes += turnaround
hours++
minutes -= 60
}
if ("${minutes}".
size() < 2) {
minutes = "0${minutes}"
}
hours = "0${hours}"
}
}
if (trips
[i
].
depart > trips
[i
+1
].
depart ||
(trips[i].depart == trips[i+1].depart && trips[i].arrive > trips[i+1].arrive)) {
tmp = trips[i]
trips[i] = trips[i+1]
trips[i+1] = tmp
}
}
}
}
}