【蓝桥杯】矩形切割

举报
西红柿炒鸡蛋儿 发表于 2022/03/30 12:37:50 2022/03/30
【摘要】 题目 【问题描述】   小明有一些矩形的材料,他要从这些矩形材料中切割出一些正方形。 当他面对一块矩形材料时,他总是从中间切割一刀,切出一块最大的正方 形,剩下一块矩形,然后再切割剩下的矩形材料,直到全部切为正方形为止。 例如,对于一块两边分别为 5 和 3 的材料(记为 5×3),小明会依次切出 3×3、2×2、1×1、1×1 共 4 个正方形。 现在小明有一块矩形的材料,两边长分别是 2...

题目 【问题描述】
   小明有一些矩形的材料,他要从这些矩形材料中切割出一些正方形。 当他面对一块矩形材料时,他总是从中间切割一刀,切出一块最大的正方 形,剩下一块矩形,然后再切割剩下的矩形材料,直到全部切为正方形为止。 例如,对于一块两边分别为 5 和 3 的材料(记为 5×3),小明会依次切出 3×3、2×2、1×1、1×1 共 4 个正方形。 现在小明有一块矩形的材料,两边长分别是 2019 和 324。请问小明最终会 切出多少个正方形?

【答案提交】   

        这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

package 省题2019;
 
public class 矩形切割 {
 
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 
		    //给定长和宽
		    int h = 2019;
	        int w = 324;
 
	        //用来记数
	        int count = 0;
 
	        //如果长和宽不相等执行循环
	        while(h != w) {
	        	//长减去宽
	            int temp = h - w;
	            //如果(长减去宽)大于宽
	            if(temp > w) {
	                h = temp;
	                count++;
	             //如果(长减去宽)小于宽
	            }else if(temp < w) {
	                h = w;
	                w = temp;
	                count++;
	              //如果(长减去宽)等于宽
	            }else if(temp == w) {
	                count = count + 2;
	                h = w;
	            }
	        }
	        System.out.println(count);
	}
 
}


 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。