http://oj.ecustacm.cn/problem.php?id=1470
题解:
不难想出用短边做正方形的边。就这样算出剩余的边 和正方形的边 一样选短的。
循环直到可以整除。
#include<cstdio>
int main(void)
{
/*printf("% d\n",2019/324);
printf("%d\n",2019%324);
printf(" %d\n",324/75);
printf("%d\n",324%75);
printf(" %d\n",75/24);
printf("%d\n",75%24);
printf(" %d\n",24/3);
printf("%d\n",24%3);*/
printf("21");
return 0;
}
完整的代码:
#include<cstdio>
#include<algorithm>
#include<iostream>
using namespace std;
int main(void)
{
int a,b;
cin>>a>>b;
int sum=0;
while(max(a,b)%min(a,b)!=0)
{
sum+=max(a,b)/min(a,b);
int temp=min(a,b);
a=max(a,b)%min(a,b);
b=temp;
}//这里可以整除就跳出来,但是最后一次的每加
printf("%d\n",sum+max(a,b)/min(a,b));//注意加上最后一次的
return 0;
}