01/10/2018, 12:06

Mong mọi người gợi ý em bài này

Cho một số nguyên không âm number, viết hàm bool judgeSquareSum (int number) kiểm tra xem số đó có phải là tổng bình phương của các số nguyên khác nhau không.
Nếu đúng, hàm trả về giá trị true, ngược lại, hàm trả về false
Ví dụ:
Input: 5
Output: true (5 = 1^2 + 2^2)

HK boy viết 14:22 ngày 01/10/2018

Có mùi bài trên Codefight
Đáp án luôn là true.

n = n * 1^2 = 1^2 + 1^2 + ... + 1^2 (n lần)

[spoiler]ahihi [/spoiler]

Trường Đỗ viết 14:20 ngày 01/10/2018

nhưng có test number=3 thì nó ra false a ạ.

HK boy viết 14:14 ngày 01/10/2018

Thế thì do bạn up thiếu đề.

các số nguyên

khác nhau, hay có thể bằng nhau?

Trường Đỗ viết 14:06 ngày 01/10/2018

Đề nó chỉ viết như thế nhưng test number = 3 nó ra false nên e nghĩ nó là các số khác nhau.

HK boy viết 14:10 ngày 01/10/2018

Bạn trừ dần những số có dạng k^2 (k^2 < n), đến cuối cùng khi kết quả = 0 thì trả về true, nếu không là false.

Trường Đỗ viết 14:06 ngày 01/10/2018

Em hiểu ý anh nhưng anh có thể viết cụ thể hơn dạ được ko ạ.

Bài liên quan
0