华为od 勾股数元组

题目描述

如果三个正整数ABCA² + B² = C² 则为勾股数,

如果ABC之间两两互质,即ABACBC均互质没有公约数,则称其为勾股数元组。

请求出给定 n ~ m 范围内所有的勾股数元组。

输入描述

起始范围

1 < n < 10000

n < m < 10000

输出描述

ABC保证A < B < C

输出格式A B C

多组勾股数元组,按照A B C升序的排序方式输出。

若给定范围内,找不到勾股数元组时,输出Na

输入:

bash 复制代码
1
20

输出:

bash 复制代码
3 4 5
5 12 13
8 15 17
javascript 复制代码
const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

function gcd(a, b) {
    return b == 0 ? a : gcd(b, a % b);
}

rl.on('line', line => {
    const [n, m] = line.split(' ').map(Number);
    let found = false;
    for (let i = n; i <= m; i++) {
        for (let j = i + 1; j <= m; j++) {
            const k = Math.sqrt(i * i + j * j);
            if (k > m) {
                break;
            }
            if (k * k == i * i + j * j) {
                if (gcd(i, j) == 1 && gcd(j, k) == 1) {
                    console.log(`${i} ${j} ${k}`);
                    found = true;
                }
            }
        }
    }
    if (!found) {
        console.log('Na');
    }
});
相关推荐
GesLuck24 分钟前
C#控件开发6—旋转按钮
开发语言·javascript·c#
wjs202439 分钟前
jQuery UI 下载指南
开发语言
程序员小续43 分钟前
现代前端工程化实践:高效构建的秘密
开发语言·前端·javascript·vue.js·webpack·前端框架·ecmascript
No8g攻城狮1 小时前
【异常解决】在idea中提示 hutool 提示 HttpResponse used withoud try-with-resources statement
java·开发语言·ide·intellij-idea
RickZhou1 小时前
React 个人博客 支持自定义主题
前端
林啾啾1 小时前
按钮凸起与按下css效果
前端·css
年纪轻轻只想躺平1 小时前
scss模块化
前端·css·scss
浪浪山小白兔1 小时前
CSS 实现下拉菜单效果实例解析
前端·css
世间一剑1 小时前
轻松理解CSS中的float浮动元素
前端·css
大模型铲屎官1 小时前
从基础到进阶,掌握 CSS 变量与calc()函数的完整指南
前端·css·html·css3·html5·css变量·calc函数