题目描述:

解题思路:
方法1:画图+计算器

方法2:代码
只需要判断两个数谁大谁小,用大的除以小的,得到的值即为当前能得到最大正方形的个数,再用大的减去小的*个数,之后再循环判断
这是一道很简单的填空题,两种方法都可以,只是方法1容易有计算失误,我更喜欢方法2
代码:
#include<bits/stdc++.h>
using namespace std;
int main(void){
int a,b;
int ans = 0;
cin >> a >> b;
while(!(a <= 0 || b <= 0)){
int temp = 0;
//逻辑很简单,如果a>b,就用a除b,得到的值就为边长=b时正方形的个数
if(a>=b){
temp = a / b;
a -= b*temp;
ans += temp;
}else{//b>a,进行相同操作
temp = b / a;
b -= a*temp;
ans += temp;
}
}
cout << ans;
}

本文介绍了如何使用C++解决蓝桥杯比赛中的矩阵切割填空题。提供了两种解题方法,包括画图结合计算器辅助理解及直接编写代码。通过比较两个数的大小,计算最大正方形的数量,并进行迭代判断,最终得出解题结果。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



