比赛时随便找了个规律,然后队友过了。不过那个规律具体细节还挺烦的。刚刚偶然看到Q巨在群里提到的他的一个思路,妙啊,很好理解,而且公式写起来也容易。OrzQ巨
#include<bits/stdc++.h> using namespace std; typedef long long LL; LL n,m; int main() { while(~scanf("%lld%lld",&n,&m)) { n--,m--; LL g=__gcd(n,m); LL l=n*m/g; LL ans=(n/g)*(m/g)*(g-1); ans+=l/n+l/m; printf("%lld\n",ans); } }
时间: 2024-10-06 17:43:06