#12017. Pythagorean Triples / 勾股数问题
Pythagorean Triples / 勾股数问题
Problem J29: Pythagorean Triples / 勾股数问题
版权信息: · 枚举与数论基础训练题
任务总览
任务名称 | 时间限制 | 内存限制 | 分数 |
---|---|---|---|
勾股数问题 | 1 sec | 1024 MB | 10 points |
题目描述
设有三个正整数 、、 满足以下条件:
那么我们称 为一组 勾股数 (Pythagorean Triple)。
现在,给定一个正整数 ,请你找出所有满足 的不同勾股数组合,并输出这些组数以及总数。
输入格式
一个正整数 (),表示勾股数中最大允许的 值。
输出格式
输出所有满足条件的勾股数组 , 每组一行,按升序排列 (即 ),格式如下:
a, b, c
所有勾股数组输出完成后,再输出一行表示总共有多少组,格式如下:
共计有x组
输入输出样例
输入示例
20
输出示例
3, 4, 5
5, 12, 13
6, 8, 10
8, 15, 17
9, 12, 15
共计有5组
题目分析与解法
✅ 解法思路:
- 使用三重嵌套或双重循环枚举 ;
- 判断是否满足: .排除重复勾股数(如 与 的倍数组)可选;
- 输出所有符合条件的 并统计总数。
时间复杂度分析
操作 | 复杂度 |
---|---|
双重循环 | |
判等计算 | |
总复杂度 | ( 时可接受) |