算法(快速gcd)"/>
stein算法(快速gcd)
设x,y为非0奇数,有以下结论:
#include<bits/stdc++.h>
using namespace std;#define LL long long
LL stein(LL a, LL b) {if(!a) return b;if(!b) return a;if(!(a | 1) && !(b | 1)) return stein(a >> 1, b >> 1) << 1;else if(!(a | 1)) return stein(a >> 1, b);else if(!(b | 1)) return stein(a, b >> 1);return stein(abs(a - b), min(a, b));
}int main() {while(1) {LL a, b;cin >> a >> b;cout << stein(a, b) << "\n";}
}
更多推荐
stein算法(快速gcd)
发布评论