解题思路:a<b时,g(a,b)=g(a,b-a);所以g(a+k,b+k)=g(a+k,b+k-(a+k))=g(a+k,b-a); c=b-a是已知的,只需要找到(a+k)%c==0;相当于a%c+k%c==c;由于k<c,所以a%c+k=c,得到k=c-a%c;
注意事项:
参考代码:
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
int main()
{
ll m,n,i;
cin>>m>>n;
ll a,b;
a=min(m,n),b=max(m,n)-min(m,n);
i=b-a%b;
cout<<i;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:1970 |
C二级辅导-统计字符 (C语言代码)浏览:697 |
C二级辅导-分段函数 (C语言代码)浏览:791 |
C语言程序设计教程(第三版)课后习题10.7 指针(C语言代码)浏览:597 |
C语言程序设计教程(第三版)课后习题6.7 (C语言代码)浏览:527 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:3254 |
老王赛马 (C语言代码)浏览:1735 |
Manchester- A+B for Input-Output Practice (II)浏览:1366 |
WU-IP判断 (C++代码)(一种有趣的实现方法)浏览:1574 |
图形输出 (Java代码)浏览:478 |