首先我们移动一下项
,并强行让a>b。
![](https://i-blog.csdnimg.cn/blog_migrate/81b7ecc8d45d0eb0b6985b713b8632c5.png)
然后我们可以画出这样一个图像
我们发现,在线段l与x轴交点处的下方,x,y的绝度值是递增的,所以我们不考虑那个最小点在下端。
之后我们发现在点的上端,因为斜率小于-1,x的减少远没有y加的快,所以我们知道极点在l与x轴的交汇处。
但是该点不一定是整点啊。。
所以我们只要找到它上面和下面最近的两个整点即可。
所以我们求ax+by=c最小的正整数解y即可,之后调出x,然后y减去a,再求x,比较两次min(|x|+|y|),就可以得出答案了。
当然如果第一次求出来的y=0,答案就是它了。。
![](https://i-blog.csdnimg.cn/blog_migrate/cdec0645add3fc3c328197dda5c76203.gif)