Quantcast
Channel: 初心者タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 21085

クエリで Project Euler Problem 6

$
0
0

【お題】

Problem 6

Problem 6 「二乗和の差」 †
最初の10個の自然数について, その二乗の和は,

1^2 + 2^2 + ... + 10^2 = 385

最初の10個の自然数について, その和の二乗は,

(1 + 2 + ... + 10)^2 = 3025

これらの数の差は 3025 - 385 = 2640 となる.

同様にして, 最初の100個の自然数について二乗の和と和の二乗の差を求めよ.

【環境】

SQLServerSQLCMD
201714.0.1000.169

設定はデフォルト。

【数学的に】

DECLARE@MaxINT=100;PRINTPOWER(@Max*(@Max+1)/2,2)-@Max*(@Max+1)*(2*@Max+1)/6;GO25164150

【クエリ】

敢えてクエリで書けば以下。

DECLARE@MaxINT=100;;WITH[CTE_Base]([Val])AS(SELECT1UNIONALLSELECT[Val]+1FROM[CTE_Base]WHERE[Val]<@Max)SELECTSUM([Val])*SUM([Val])-SUM([Val]*[Val])FROM[CTE_Base]OPTION(MAXRECURSION0);GO-----------25164150(1行処理されました)

Viewing all articles
Browse latest Browse all 21085

Trending Articles