您的位置:首页 > 编程语言 > C语言/C++

蓝桥杯2019 第十届 c/c++ c组第3题 求切割方形(30行代码 简洁!)

2019-03-24 20:23 459 查看
题目:

小明有一块n*m的矩形白纸,每次他都会从中间切一刀切出一个最大的正方形,
随后从剩余矩形再切出最大正方形,直到剩下的都是正方形为止
输入5 3
可以切出 3*3 2*2 1*1 1*1 四个正方形 呢么2019 324 可以切出多少个正方形
提交共能切出的正方形的个数

代码:
#include <iostream>
using namespace std;

int main()
{
int n = 2019, m = 324;
int sum = 0;
while (1)
{
if (n > m) // 切出一块正方形
{
n -= m; // 减去切出的正方形
sum++; // 记录
}
else if(n < m) // 切出一块正方形
{
m -= n; // 减去切出的正方形
sum++; // 记录
}
else
{
sum ++; // 相等代表剩下的那个矩形也是正方形了 没有长方形了则不再切割!
break; // 退出循环
}
}

cout << sum;

return 0;
}

如果感觉这篇文章对你有帮助的话,不妨点一个赞,十分感谢。
printf(“点个赞吧!”);
cout<<“点个赞吧!”;
Console.WriteLine(“点个赞吧!”);
System.out.println(“点个赞吧!”);

4000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: