Problem 6 「二乗和の差」 †
最初の10個の自然数について, その二乗の和は,
1^2 + 2^2 + ... + 10^2 = 385
最初の10個の自然数について, その和の二乗は,
(1 + 2 + ... + 10)^2 = 3025
これらの数の差は 3025 - 385 = 2640 となる.
同様にして, 最初の100個の自然数について二乗の和と和の二乗の差を求めよ.
X is (50*101)^2-(100*101*201)/6.
haskell解法 入力として100を渡す
main=do
n <- getLine
putStrLn $ show . g $ read n
g :: Int->Int
g n= (f2 n) - (f n)
f::Int->Int
f n=sum [x*x|x<-[1..n]]
f2::Int->Int
f2 n=(sum [x | x<-[1..n]]) ^ 2
最終更新:2018年04月18日 09:32