โจทย์ทั้งหมด
ง่าย 0 ข้อที่แก้แล้ว อัตราผ่าน 0%

ผลต่างของกำลังสอง

นำผลรวมของกำลังสองมาลบออกจากกำลังสองของผลรวม

โดยใช้จำนวนเต็มตั้งแต่ 1 ถึง n ให้คำนวณสองค่าดังนี้: นำจำนวนเต็มทั้งหมดมาบวกกันแล้วนำผลลัพธ์ไปยกกำลังสอง; แยกกัน ให้นำแต่ละจำนวนเต็มมายกกำลังสองแล้วนำผลลัพธ์เหล่านั้นมาบวกกัน จากนั้นให้คืนค่าผลต่างระหว่างค่าทั้งสองนี้

ให้เขียนฟังก์ชัน difference_of_squares(n)

อินพุต

n: จำนวนเต็มสุดท้ายที่ต้องนำมาคำนวณ

เอาต์พุต

คืนค่ากำลังสองของผลรวมลบด้วยผลรวมของกำลังสอง

เงื่อนไข

0 ≤ n ≤ 50,000 สำหรับ n = 0 ทั้งสองผลรวมจะเป็น 0 ค่าที่ต้องใช้ทั้งหมดอยู่ในช่วงของจำนวนเต็ม signed 64 บิต

ตัวอย่าง

ตัวอย่างที่ 1
อินพุต:
n = 4

ผลลัพธ์ที่คาดหวัง:
expected = 70
อินพุต:
long long n = 4;

ผลลัพธ์ที่คาดหวัง:
long long expected = 70;
อินพุต:
long n = 4;

ผลลัพธ์ที่คาดหวัง:
long expected = 70;

คำอธิบาย

(1 + 2 + 3 + 4)² = 100 ผลรวมของกำลังสองคือ 1 + 4 + 9 + 16 = 30 นำมาลบกัน: 100 − 30 = 70

ตัวอย่างที่ 2
อินพุต:
n = 1

ผลลัพธ์ที่คาดหวัง:
expected = 0
อินพุต:
long long n = 1;

ผลลัพธ์ที่คาดหวัง:
long long expected = 0;
อินพุต:
long n = 1;

ผลลัพธ์ที่คาดหวัง:
long expected = 0;

คำอธิบาย

ทั้งสองค่ามีค่าเท่ากับ 1 ดังนั้นผลต่างคือ 0

แหล่งอ้างอิง

โจทย์นี้ปรับให้เหมาะกับ CodeUtility กรุณาทำตามคำชี้แจงและข้อจำกัดด้านบน

เรียนรู้จากคนอื่น

แนวทางจากชุมชน

ยังไม่มีวิธีทำที่เผยแพร่ ลองแก้โจทย์นี้เพื่อแชร์วิธีแรก