文章

166

粉丝

68

获赞

855

访问

61.9k

头像
长方形中的正方形 题解:几何模拟
P1819 复旦大学机试题
发布于2025年2月14日 11:59
阅读数 243

#include <bits/stdc++.h>
using namespace std;

struct sqr{
    int a,b;
    sqr(int width,int length):a(width),b(length){}
};

int main() {
    int a,b;
    while(cin>>a>>b){
        int ans=0;
        sqr x=sqr(a,b);
        while(x.a!=x.b){
            int minn=min(x.a,x.b);
            if(x.a>x.b){
                x.a-=minn;
            }else if(x.b>x.a){
                x.b-=minn;
            }
            ans++;
        }
        cout<<ans+1<<endl;
    }
}

一直切,切掉的都是最大的正方形,就切掉小边的刚好是最大的,然后直到两边相等,这时候结束需要加一,就是这个最后的收尾情况

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发