Đề bài
Xem bản gốc (English)Sử dụng các số nguyên từ 1 đến n, hãy tính hai giá trị: đầu tiên cộng tất cả các số nguyên rồi bình phương kết quả; riêng biệt, bình phương từng số nguyên rồi cộng các bình phương đó lại. Trả về hiệu của giá trị đầu tiên trừ giá trị thứ hai.
Cài đặt difference_of_squares(n).
Đầu vào
n: Số nguyên cuối cùng cần tính.
Đầu ra
Trả về hiệu giữa bình phương của tổng và tổng các bình phương.
Ràng buộc
0 ≤ n ≤ 50.000. Với n = 0, cả hai tổng đều bằng 0. Tất cả giá trị cần thiết đều nằm trong phạm vi số nguyên có dấu 64-bit.
Ví dụ
Đầu vào:
n = 4
Kết quả mong đợi:
expected = 70
Đầu vào:
long long n = 4;
Kết quả mong đợi:
long long expected = 70;
Đầu vào:
long n = 4;
Kết quả mong đợi:
long expected = 70;
Giải thích
(1 + 2 + 3 + 4)² = 100. Tổng các bình phương là 1 + 4 + 9 + 16 = 30. Hiệu: 100 − 30 = 70.
Đầu vào:
n = 1
Kết quả mong đợi:
expected = 0
Đầu vào:
long long n = 1;
Kết quả mong đợi:
long long expected = 0;
Đầu vào:
long n = 1;
Kết quả mong đợi:
long expected = 0;
Giải thích
Cả hai giá trị đều bằng 1, nên hiệu của chúng là 0.
Tham khảo
Thử thách này đã được điều chỉnh cho CodeUtility. Hãy làm theo đề bài và các ràng buộc ở trên.