Project Euler Problem 9: Special Pythagorean triplet
2017-03-20 00:09
435 查看
Special Pythagorean triplet
Problem 9
A Pythagorean triplet is a set of three natural numbers,a <
b < c, for which,
a2 + b2 =c2
For example, 32 + 42 = 9 + 16 = 25 = 52.
There exists exactly one Pythagorean triplet for whicha +
b + c = 1000.
Find the product abc.
C++:
C++(Truth):
#include <iostream>
using namespace std;
int main()
{
int s, c;
while(cin >> s) {
for(int a=3, maxa=(s-3)/3; a<=maxa; a++) {
for(int b=a+1, maxb=(s-1-a)/2; b<=maxb; b++) {
c = s - a - b;
if(a + b <= c)
continue;
if(a * a + b * b == c * c)
cout << a * b * c << endl;
}
}
}
return 0;
}
Problem 9
A Pythagorean triplet is a set of three natural numbers,a <
b < c, for which,
a2 + b2 =c2
For example, 32 + 42 = 9 + 16 = 25 = 52.
There exists exactly one Pythagorean triplet for whicha +
b + c = 1000.
Find the product abc.
C++:
#include <iostream> using namespace std; int main() { int n, c; // a + b + c = n // a^2 + b^2 = c^2 // a < b < c // a + b > c // a < n / 3 // b <= (n - a) / 2 // c = n - a - b while(cin >> n) { for(int a=1, maxa=n/3; a<maxa; a++) { for(int b=a+1, maxb=(n-a)/2; b<=maxb; b++) { c = n - a - b; if(a + b <= c) continue; if(a * a + b * b == c * c) cout << a * b * c << endl; } } } return 0; }
C++(Truth):
#include <iostream>
using namespace std;
int main()
{
int s, c;
while(cin >> s) {
for(int a=3, maxa=(s-3)/3; a<=maxa; a++) {
for(int b=a+1, maxb=(s-1-a)/2; b<=maxb; b++) {
c = s - a - b;
if(a + b <= c)
continue;
if(a * a + b * b == c * c)
cout << a * b * c << endl;
}
}
}
return 0;
}
相关文章推荐
- Problem 9:Special Pythagorean triplet
- Project Euler: Problem 9 Special Pythagorean triplet
- (Problem 9)Special Pythagorean triplet
- Problem 9 Special Pythagorean triplet (毕达哥拉斯三元数组...)
- (Problem 9)Special Pythagorean triplet
- Problem 9:Special Pythagorean triplet
- 【Project Euler】【Problem 9】Special Pythagorean triplet
- (Problem 9)Special Pythagorean triplet
- project euler Problem 56
- project euler Problem 52
- http://projecteuler.net/problem=20 [Answer:648]
- Project Euler -> problem 5
- Project Euler Problem 13 Large sum
- Project Euler problem 60
- Project Euler problem 65
- Project Euler Problem 57
- Project Euler Problem 48 - 求大数的模
- Project Euler Problem 30
- Project Euler problem 8
- Project Euler problem 19