题目描述

勾股数元组

如果3个正整数(a,b,c)满足a2 + b2 = c2的关系,则称(a,b,c)为勾股数(著名的勾三股四弦五),

为了探索勾股数的规律,我们定义如果勾股数(a,b,c)之间两两互质(即a与b,a与c,b与c之间均互质,没有公约数),则其为勾股数元组(例如(3,4,5)是勾股数元组,(6,8,10)则不是勾股数元组)。

请求出给定范围[N,M]内,所有的勾股数元组。

输入描述

起始范围N,1 <= N <= 10000

结束范围M,N < M <= 10000

输出描述

1. a,b,c请保证a < b < c,输出格式:a b c;

2. 多组勾股数元组请按照a升序,b升序,最后c升序的方式排序输出;

3. 给定范围中如果找不到勾股数元组时,输出”NA“。

示例1 输入输出示例仅供调试,后台判题数据一般不包含示例

输入

1

20

输出

3 4 5

5 12 13

8 15 17

说明

[1, 20]范围内勾股数有:(3 4 5),(5 12 13),(6 8 10),(8 15 17),(9 12 15),(12 16 20);

其中,满足(a,b,c)之间两两互质的勾股数元组有:(3 4 5),(5 12 13),(8 15 17);

按输出描述中顺序要求输出结果。

示例2 输入输出示例仅供调试,后台判题数据一般不包含示例

输入

5

10

输出

NA

说明

[5, 10]范围内勾股数有:(6 8 10);

其中,没有满足(a,b,c)之间两两互质的勾股数元组;

给定范围中找不到勾股数元祖,输出”NA“。


C++代码实现:

#include <bits/stdc++.h>using namespace std;int is_coPrime(int src1, int src2);int GogutanPrimitive(int N, int M);int main(int argc, char **argv)
{int N = 0, M = 0;scanf("%d %d", &N, &M);GogutanPrimitive(N, M);return 0;
}/* 判断两个数字是否互质,返回值是1时表明互质,其它值则不互质 */
int is_coPrime(int src1, int src2)
{if (0 == src2) {return src1;} else {return is_coPrime(src2, src1 % src2);}
}int GogutanPrimitive(int N, int M)
{int countor = 0;if (0 < N && N < M) {sqrt(M);} else {return -1;}for (int i = N; i <= M; i++) {for (int j = i + 1; j <= M; j++) {for (int k = j + 1; k <= M; k++) {if (i * i + j * j == k * k) {if (1 == is_coPrime(i, j) && 1 == is_coPrime(i, k) && 1 == is_coPrime(j, k)) {countor++;cout << i << ' ' << j  << ' '<< k << endl;}}}}}if (countor == 0) {printf("NA");}return 0;
}

【华为OD机试真题 C++】 勾股数元组【2022 Q4 | 100分】相关推荐

  1. 【华为OD机试真题 python】 比赛【2022 Q4 | 100分】

    ■ 题目描述 一个有N个选手参加比赛,选手编号为1~N(3<=N<=100),有M(3<=M<=10)个评委对选手进行打分. 打分规则为每个评委对选手打分,最高分10分,最低分 ...

  2. 【华为OD机试真题】完美走位(python)100%通过率 超详细代码注释 代码解读

    [华为OD机试真题 2022&2023]真题目录 @点这里@ [华为OD机试真题]信号发射和接收 &试读& @点这里@ [华为OD机试真题]租车骑绿道 &试读& ...

  3. 【华为OD机试真题 Java】火星文计算(100%通过+全网最详细注释)

    前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...

  4. 【华为OD机试真题】促销活动(货币兑换)100%通过率

    促销活动 题目描述: 系统需要提供人民币(CNY).美元(USD).英镑(GBP).港币(HKD) 价值转换功能.为了简单处理,题目的说明和考生调试可以用下面的默认汇率: 1 CNY = 2 HKD ...

  5. 华为OD机试真题 Python 实现【机器人】【100%通过率】【2022.11 Q4 新题】

        所有题目均有五种语言实现.C语言实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 现有一个机器人,可放置于M×N的网格中任意位置, 每个网 ...

  6. 【华为OD机试真题 python】九宫格【2023 Q1 | 200分】

    ■ 题目描述 [九宫格] 九宫格是一款广为流传的游戏,起源于河图洛书. 游戏规则是:1到9九个数字放在3×3的格子中,要求每行.每列以及两个对角线上的三数之和都等于15. 在金麻名著<射雕英雄传 ...

  7. 2023华为od机试真题【数字游戏】Python【100%通过率】

             所有题目均有五种语言实现.C实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 小明玩一个游戏.系统发1+n张牌,每张牌上有一个整 ...

  8. 华为OD机试真题 Java 实现【机器人】【100%通过率】【2022.11 Q4 新题】

        所有题目均有五种语言实现.C语言实现目录.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 现有一个机器人,可放置于M×N的网格中任意位置, 每个网 ...

  9. 华为OD机试真题2023 B卷(JAVAJS)

    华为机试题库已于5月10号由2022Q4 A卷 切换 为2023 B卷  各位同学如果收到的是B卷则刷下面的题,如果收到的是A卷则去A卷区刷题 A卷区地址 →→→ 华为OD机试真题2022Q4 A卷( ...

  10. 华为OD机试真题大全完整目录

    华为OD机试真题大全完整目录 专栏说明如下 专栏目录 专栏说明如下 内容:华为OD机试真题大全 数量:406篇博文(2023年5月16日截止) 更新时间至:2023年5月16日(后续加上去的博文,会每 ...

最新文章

  1. java创建datetime_Java OffsetDateTime ofInstant()用法及代码示例
  2. Sharepoint 2010 Powershell去增加 上传文件类型
  3. nyist -- 组队赛(一)
  4. visual c++ 部分窗口样式设置
  5. rhel5.5下安装awstats实现网站流量监控
  6. 群晖远程访问服务器,如何通过远程访问访问Synology中的所有数据
  7. 查看进程启动时间_Linux服务下通过指令查看JVM(非原创侵删)
  8. 14.PHP vld 扩展
  9. Retrofit之Converter简单解析
  10. java 正则表达式 s_正则表达式 java
  11. WPF界面样式学习及优化
  12. 电机扭矩计算公式T=9550*P/n
  13. IMPROVING ADVERSARIAL ROBUSTNESS REQUIRES REVISITING MISCLASSIFIED EXAMPLES
  14. LSTM+CNN模型厄尔尼诺事件预测
  15. 新手做搭建独立站需要准备什么
  16. 用c语言模拟石头剪刀布小游戏
  17. linux统计排序命令,Linux命令去重统计排序
  18. 联通物联卡为什么没有网络_联通物联卡突然没有信号,试着用这几方法!
  19. 化工人员定位系统提供智能安全保障
  20. Philo和潘多拉提供了一个打折的,但暂时的,3个月的电视和音乐捆绑

热门文章

  1. java 二维数组参数传递_方法和数组就是这么简单!
  2. C++实现2048小游戏(控制台版的)
  3. nordic52840DK-NFC卡
  4. 基于S905L智能机顶盒打造一台Linux生产力办公主机
  5. 反向解析与PTR(Pointer Record)
  6. 最难忘的新年祝福,第一个让大家都惊喜的小程序(有趣、恶搞、好玩)
  7. python考勤管理系统_Mysql和python在考勤系统中的应用
  8. ERP系统中KPI指标的建立与管理
  9. linux中lv的详细创建流程【化分区-pv-vg-lv创建整套流程】,centos中lv脚本创建vg-pv-lv,-bash: lvs: command not found处理方法
  10. Python与seo工具脚本,360/搜狗相关搜索词采集源码参考