4 ms·
It's not really magic though. Here's a simpler variation of the problem: Two buses make different circular routes from the same depot. One bus takes 3 hours t
by justinsaccount 5y ago
It's not really magic though. Here's a simpler variation of the problem:
Two buses make different circular routes from the same depot. One bus takes 3 hours to do a loop, the other takes 5. At what times from the start of the day will both buses be at the depot at the same time?
you could write a loop like this:
for t in range(0, 10000):
if t % 3 == 0 and t % 5 == 0:
print("same at", t)
which if you run, you'd see:
same at 0
same at 15
same at 30
same at 45
same at 60
same at 75
same at 90
and even if you knew nothing about math, you could see that and think, oh, so they just meet every 15, which happens to be 3 times 5... You don't need to count up one at a time and check remainders, you can just increment by 15 and get the exact same result..
for t in range(0, 10000, 15):
print("same at", t)
That's more or less what I did when I solved it.. saw how the problem simplified to finding the common multiples of numbers, which when they are prime is just the product. apply this process iteratively and you have the solution.
- maximus-decimus 5y agoit's funny to me how your problem is literally an applied fizz buzz. But then again people have a much harder time applying concept they know to given situations than if they're told directly to do something.