克拉玛依市网站建设_网站建设公司_域名注册_seo优化
2025/12/23 21:03:50 网站建设 项目流程

【题目来源】
https://oj.czos.cn/p/1335

【题目描述】
把一块 m*n 米的土地分割成同样大的正方形,如果要求没有土地剩余,分割出的正方形土地最大边长是多少米?(最少不能少于1米*1米)
如:一块6米*4米的土地,能够分割的最大的正方形的边长为2米。

【输入格式】
两个整数 m 和 n(m,n≤10^18)

【输出格式】
能够分割的最大正方形的边长。

【输入样例】
6 4

【输出样例】
2

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

【算法分析】
● 通过分析,本题本质上是求“最大公约数”。
●​​​​​​​ 本题中,m,n 的值达到了 10^18,所以它们的数据类型需设为 long long 型。若设为 int 型,会得不到正确答案。

【算法代码】

#include <bits/stdc++.h>
using namespace std;typedef long long LL;LL gcd(LL a,LL b) {if(b==0) return a;return gcd(b,a%b);
}int main() {LL a,b;cin>>a>>b;cout<<gcd(a,b);return 0;
}/*
in:6 4
out:2
*/




【参考文献】
https://oj.czos.cn/p/1335
https://blog.csdn.net/hnjzsyjyj/article/details/156192874
https://blog.csdn.net/hnjzsyjyj/article/details/156182882
https://blog.csdn.net/hnjzsyjyj/article/details/156185382




 

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询