试题描述:一个直角三角形的周长是120的话,那么它的三边可以是20,48,52,或者24,45,51,还有30,40,50,有3种不同的解。现在如果给定一个直角三角形的周长,那么这个周长能有多少个直角三角形?假设边长为整数。
分析:
已知i+j+k=l;0<i<=j<k;
通过不等式可以得到i<l/3;j<l/2;
#include <iostream>
using namespace std;
int main()
{
int ans=0,l;
cin>>l;
for(int i=1;i<l/3;i++){
for(int j=i+1;j<l/2;j++){
int k=l-i-j;
if(k<i+j&&i*i+j*j==k*k)
ans++;
}
}
cout<<ans<<endl;
return 0;
}