-
Notifications
You must be signed in to change notification settings - Fork 0
/
6.hs
24 lines (18 loc) · 779 Bytes
/
6.hs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
--The sum of the squares of the first ten natural numbers is,
--1^2 + 2^2 + ... + 10^2 = 385
--The square of the sum of the first ten natural numbers is,
--(1 + 2 + ... + 10)^2 = 55^2 = 3025
--Hence the difference between the sum of the squares of
--the first ten natural numbers and the square of the sum
--is 3025 − 385 = 2640.
--Find the difference between the sum of the squares of
--the first one hundred natural numbers and the square of the sum.
sumOfSquaresFrom :: [Int] -> Int
sumOfSquaresFrom [] = 0
sumOfSquaresFrom xs = sum $ map (^2) xs
squareOfSumFrom :: [Int] -> Int
squareOfSumFrom [] = 0
squareOfSumFrom xs = (^2) $ sum xs
squareDifference :: [Int] -> Int
squareDifference [] = 0
squareDifference xs = subtract (sumOfSquaresFrom xs) (squareOfSumFrom xs)