Einfach 0 gelöst 0% Erfolgsquote

Difference of Squares

Subtract the sum of squares from the square of the sum.

Das lernst du

  • Compute sums of numbers and of squares
  • Use closed formulas instead of loops
  • Compare two ways to get the same answer

Problem

Übersetzung anzeigen

Using the integers from 1 through n, calculate two quantities: first add the integers and square the result; separately square each integer and add those squares. Return the first quantity minus the second.

Implement difference_of_squares(n).

Input

n: The last integer to include.

Output

Return square-of-sum minus sum-of-squares.

Einschränkungen

0 ≤ n ≤ 50,000. For n = 0, both sums are 0. All required values fit signed 64-bit integers.

Beispiele

Beispiel 1
Eingabe:
n = 4

Erwartete Ausgabe:
expected = 70
Eingabe:
long long n = 4;

Erwartete Ausgabe:
long long expected = 70;
Eingabe:
long n = 4;

Erwartete Ausgabe:
long expected = 70;

Erläuterung

(1 + 2 + 3 + 4)² = 100. The sum of squares is 1 + 4 + 9 + 16 = 30. Subtract: 100 − 30 = 70.

Beispiel 2
Eingabe:
n = 1

Erwartete Ausgabe:
expected = 0
Eingabe:
long long n = 1;

Erwartete Ausgabe:
long long expected = 0;
Eingabe:
long n = 1;

Erwartete Ausgabe:
long expected = 0;

Erläuterung

Both quantities equal 1, so their difference is 0.

So gehst du vor

Versuch es zuerst allein und öffne dann einen Hinweis nach dem anderen.

Hinweis 1

You are comparing two summaries of the same range: one based on summing first, the other based on squaring first.

Hinweis 2

Use the closed-form expressions for sums of integers and sums of squares instead of looping through every value.

Hinweis 3

Handle the zero case carefully, since both quantities should be zero there.

Erwartete Komplexität

O(1) time, O(1) extra space

Referenzen

Diese Aufgabe wurde für CodeUtility angepasst. Beachte die oben genannten Vorgaben und Einschränkungen.

Von anderen lernen

Community-Lösungen

Noch keine veröffentlichten Lösungen. Löse die Aufgabe und teile als Erster eine Lösung.