一开始还有点看不懂题目,后来发现实在是太水了:最优解一定是优先切当前最大的正方形(别问我为什么,自己在草稿纸上画画),那么接下来怎么做应该无需多言了。
毕竟大天朝有句古话说得好:简单题总是做得太仓促…… 记得开long long……
#include <iostream>
using namespace std;
long long a,b,ans,r;
int main(){
for (int i=1;i<=10;i++){
ans=0;
cin>>a>>b;
if (a<b) swap(a,b);
while (b){
r=a%b;
ans+=a-r;
a=b;
b=r;
}
cout<<ans<<endl;
}
return 0;
}