当前位置: 首页 > article >正文

AcWing 3683:长方形中的正方形 ← 复旦大学考研机试题

【题目来源】
https://www.acwing.com/problem/content/3686/

【题目描述】
给出长方形的长和宽,
每次从长方形里撕去最大的正方形,输出最后能得到多少正方形。

【输入格式】
一行,两个整数 n,m。

【输出格式】
一个整数,表示最后能得到多少正方形。

【数据范围】
1≤n,m≤
10^9

【输入样例】
3 4

【输出样例】
4

【算法分析】
● 数据范围达到
10^9,故变量声明为 long long 型。
● 本题利用求余(
%)运算,不会 TLE。否则,若将代码中的选择结构改为如下代码,虽在逻辑上没有问题,但由于数据量大,所以必然会 TLE。

//select statements causing TLE
if(n>m) n=n-m;
else m=m-n;

【算法代码】

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

typedef long long LL;
LL n,m;
LL cnt;

int main() {
    cin>>n>>m;
    while(n && m) {
        if(n>m) cnt=cnt+n/m,n=n%m;
        else cnt=cnt+m/n,m=m%n;
    }
    cout<<cnt<<endl;

    return 0;
}


/*
in:
3 4

out:
4
*/




【参考文献】
https://www.acwing.com/problem/content/solution/3686/1/


 




 


http://www.kler.cn/a/419609.html

相关文章:

  • Python中通过点运算符来访问命名空间中参数args方法
  • 专业解析 .bashrc 中 ROS 工作空间的加载顺序及其影响 ubuntu 机器人
  • 什么语言适合做 Serverless 开发?
  • docker快速安装zookeeper
  • 厨艺与编码:从厨房秘籍探索WebPack中的Tree Shaking与Code Splitting--让你的前端菜单瘦身的秘密
  • 5、防火墙一
  • 【Vue3】App.vue
  • 基于SpringBoot的汽车销售网站
  • 从Prometheus更换为VictoriaMetrics
  • 深入探讨NIO
  • 架构的学习
  • Verilog的线与类型与实例化模块
  • 成都睿明智科技有限公司抖音电商服务的新引擎
  • ubuntu的用户使用
  • 十进制左移右移以及IO输出处理记录
  • 基于Java Springboot房屋出售租赁系统
  • torch_geometric使用手册-Creating Graph Datasets(专题四)
  • 《C++ Primer Plus》学习笔记|第1章 预备知识 (24-12-2更新)
  • Python的学习路线
  • opensatck-海光C86芯片的计算节点直通英伟达T4 GPU加速卡的操作记录
  • Vue单页面应用和多页面应用
  • Python3 多线程使用concurrent.futures
  • tomcat 8在idea启动控制台乱码
  • 四元数Quaternion的概念以及应用领域和处理方法
  • 无法通过windows功能控制面板自动安装或卸载windows server角色和功能
  • 【人工智能】用Python实现卷积神经网络(CNN)进行图像分类:从零开始的深度学习教程