Tối ưu thuật toán tính tổng bình phương các số nguyên từ 1 đến n

Em chào mọi người ạ. Em có 1 bài toán như trên tiêu đề nhưng cách em làm không chạy đủ thời gian, em muốn hỏi cách tối ưu bài toán này để chạy đủ thời gian với ạ.

n = int(input("N = "))
sum = 0
for i in range(1,n+1):
    sum = sum + i**2
print("P(",n,") = ", int(sum), sep = "")

Áp dụng công thức O(1) thôi bạn.

1^2 + 2^2 + ... + n^2 = \frac{n(n+1)(2n+1)}{6}
7 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?