期望得分:30+50+30=110
实际得分:40+0+0=40
并查集合并再次写炸。。。
模拟更相减损术的过程
更相减损术,差一定比被减数小,当被减数=减数时,停止
对于同一个减数来说,会被减 第1次减这个减数的被减数/这个减数 次
然后这个减数成为被减数,减数变为 原被减数-k*原减数,即原被减数%原减数
就变成了辗转相除
#include<cstdio> #include<iostream> using namespace std; typedef long long LL; LL ans; void gcd(LL a,LL b) { if(!b) { ans++; return; } ans+=a/b; gcd(b,a%b); } int main() { freopen("seq.in","r",stdin); freopen("seq.out","w",stdout); LL a,b; cin>>a>>b; gcd(a,b); cout<<ans; }