U302208 GSEP 2级样题 勾股数

GSEP 2级样题 勾股数

题目描述

勾股数是很有趣的数学概念。如果三个正整数a、b、c,满足a^2 + b^2 = c^2,而且1 ≤ a ≤ b ≤ c,我们就将a、b、c组成的三元组(a, b, c)称为勾股数。你能通过编程,数数有多少组勾股数,能够满足c ≤ n吗?

输入格式

输入一行,包含一个正整数n。约定 1 ≤ n ≤ 1000。

输出格式

输出一行,包含一个整数c,表示有c组满足条件的勾股数。

样例 #1

样例输入 #1

5

样例输出 #1

1

样例 #2

样例输入 #2

13

样例输出 #2

3

提示

满足C ≤ 5 的勾股数只有一组,即(3,4,5)。

满足C ≤ 13 的勾股数有 3 组,即(3,4,5)、(6,8,10)和(5,12,13)。


#include <iostream>
#include <cmath>

using namespace std;


int main() {
	int n; cin >> n;
	int ct = 0;
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= i; j++) {
			for (int k = 1; k <= j; k++){
				ct += (k * k + j * j == i * i);
			}
		}
	}
	cout << ct;
}

posted @   iamy  阅读(779)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示