题目链接在这里:Problem - I - Codeforces
对于这种整数余数问题,首先要保证的是一定得确定一个最小的分度值作为单位一!!
1 #include "bits/stdc++.h" 2 using namespace std; 3 typedef long long LL; 4 LL a,h,m; 5 LL gcd(LL x,LL y){return y==0?x:gcd(y,x%y);} 6 int main(){ 7 LL i,j,g; 8 scanf("%lld%lld%lld",&h,&m,&a); 9 g=gcd(h-1,h*m); 10 printf("%lld",min(g*(2*(a/g)+1),h*m)); 11 return 0; 12 }