P1272 - 勾股数

题目描述

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

输入格式

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

输出格式

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

输入输出样例 #1

输入 #1

5

输出 #1

1

输入输出样例 #2

输入 #2

13

输出 #2

3

说明/提示

【样例解释 1】

满足 $c \leq 5$ 的勾股数只有 $(3,4,5)$ 一组。

【样例解释 2】

满足 $c \le 13$ 的勾股数有 $3$ 组,即 $(3,4,5)$、$(6,8,10)$ 和 $(5,12,13)$。

测试点数目

共10个测试点,每个测试点10分

时间与内存限制

每个测试点时间:1000ms(1.0s),内存:512MiB

输入输出模式

本OJ支持两种输入输出模式

1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:P1272.in,输出文件名为:P1272.out