2018-09-30 23:01:58 +01:00
---
id: 5900f3761000cf542c50fe88
challengeType: 5
title: 'Problem 9: Special Pythagorean triplet'
2019-08-05 09:17:33 -07:00
forumTopicId: 302205
2018-09-30 23:01:58 +01:00
---
## Description
< section id = 'description' >
2020-02-28 21:39:47 +09:00
2018-09-30 23:01:58 +01:00
A Pythagorean triplet is a set of three natural numbers, < var > a< / var > < < var > b< / var > < < var > c< / var > , for which,
2020-02-28 21:39:47 +09:00
2018-09-30 23:01:58 +01:00
< div style = 'text-align: center;' > < var > a< / var > < sup > 2< / sup > + < var > b< / var > < sup > 2< / sup > = < var > c< / var > < sup > 2< / sup > < / div >
2020-02-28 21:39:47 +09:00
2018-09-30 23:01:58 +01:00
For example, 3< sup > 2< / sup > + 4< sup > 2< / sup > = 9 + 16 = 25 = 5< sup > 2< / sup > .
2020-02-28 21:39:47 +09:00
There exists exactly one Pythagorean triplet for which < var > a</ var > + < var > b</ var > + < var > c</ var > = 1000. Find the product < var > abc</ var > such that < var > a</ var > + < var > b</ var > + < var > c</ var > = `n` .
2018-09-30 23:01:58 +01:00
< / section >
## Instructions
< section id = 'instructions' >
< / section >
## Tests
< section id = 'tests' >
```yml
2018-10-04 14:37:37 +01:00
tests:
2020-02-28 21:39:47 +09:00
- text: < code > specialPythagoreanTriplet(24)</ code > should return a number.
testString: assert(typeof specialPythagoreanTriplet(24) === 'number');
2018-10-04 14:37:37 +01:00
- text: < code > specialPythagoreanTriplet(24)</ code > should return 480.
2019-05-26 22:02:20 +01:00
testString: assert.strictEqual(specialPythagoreanTriplet(24), 480);
- text: < code > specialPythagoreanTriplet(120)</ code > should return 49920, 55080 or 60000
testString: assert([49920, 55080, 60000].includes(specialPythagoreanTriplet(120)));
2020-02-28 21:39:47 +09:00
- text: < code > specialPythagoreanTriplet(1000)</ code > should return 31875000.
testString: assert.strictEqual(specialPythagoreanTriplet(1000), 31875000);
2018-09-30 23:01:58 +01:00
```
< / section >
## Challenge Seed
< section id = 'challengeSeed' >
< div id = 'js-seed' >
```js
function specialPythagoreanTriplet(n) {
let sumOfabc = n;
2020-09-15 09:57:40 -07:00
2018-09-30 23:01:58 +01:00
return true;
}
specialPythagoreanTriplet(1000);
```
< / div >
< / section >
## Solution
< section id = 'solution' >
```js
const specialPythagoreanTriplet = (n)=>{
let sumOfabc = n;
let a,b,c;
for(a = 1; a< =sumOfabc/3; a++){
for(b = a+1; b< =sumOfabc/2; b++){
c = Math.sqrt(a*a+b*b);
if((a+b+c) == sumOfabc){
return a*b*c;
}
}
}
}
```
< / section >