题目背景
对应的选择、判断题:https://ti.luogu.com.cn/problemset/1182
题目描述
直角三角形有两条直角边与一条斜边,设两条直角边的长度分别为 a,b,则直角三角形的面积为 2ab。
请你计算当直角边长 a,b 均取不超过 n 的正整数时,有多少个不同的面积为整数的直角三角形。直角边长分别为 a,b 和 a′,b′ 的两个直角三角形相同,当且仅当 a=a′, b=b′ 或者 a=b′, b=a′。
输入格式
一行,一个整数 n,表示直角边长的最大值。
输出格式
输出一行,一个整数,表示不同的直角三角形数量。
输入输出样例
输入 #1复制
3
输出 #1复制
3
输入 #2复制
5
输出 #2复制
9
说明/提示
对于所有测试点,保证 1≤n≤1000。
代码实现:
cpp
#include <iostream>
using namespace std;
int main() {
int n, ans = 0;
cin >> n;
for (int a = 1; a <= n; a++) {
for (int b = a; b <= n; b++) {
if ((a * b) % 2 == 0) {
ans++;
}
}
}
cout << ans << endl;
return 0;
}