Contents
Problem
Solution
因為在達到 b 年時會跳回至 a 年,所以對於給定的年,有可能有多種真實的年分。
如果 y 在他們之間:
a … y … b
- y
- y -> b -> a -> y
…
d = (y 到 b) + (a 到 y) = (b - y) + (y - a)
可能的真實年份可以這樣算 : y + d * x = year
。
接著只需要從不同電腦裡面找一個最大的顯示年份(真實年份不會小於它),從它開始窮舉,找可以使所有電腦情況皆符合得。y + d * x = year
=> (year - y) % d
Code
1 |
|