C 一日之计在于晨
刚开始,我们先对  进行 
 将时钟范围定为 
,
假设顺时针操作了  次,那么最终位置在 
然后化为 
此时是线性同余方程,然后化为 
同理,如果是逆时针操作  次,那么方程为 
我们可以使用扩展欧几里得算法求解  的 
 和 
令 
当  时,线性同余方程才有解,
此时  且 
,
我们需要  尽可能小,如果 
,那么我们要刚好让 
 到离 
 最近的点再走一次,
也就是说 
此时 将方程两边同时乘上 ,得 
令 
有 
此时  是该方程的特解,我们需要求该方程的通解。
设 , 有 
解得 ,这个分式还可以化简,即 
也就是说
此时最小的非负整数解为 
当  时,
同上,我们需要  尽可能小,此时 
再同上 最小的非负整数解也为 
此时求得
前者的同余方程的最小点为 ,最小代价为 
后者的同余方程的最小点为 ,最小代价为 

京公网安备 11010502036488号