반응형
https://leetcode.com/problems/valid-perfect-square/description/
가우스의 제곱합 공식을 이용한 문제였습니다.
📕 풀이방법
📔 풀이과정
완전 제곱수는 연속된 홀수를 더하는 수열의 합으로 표현 가능합니다.
1 = 1
1 + 3 = 4
1 + 3 + 5 = 9
1 + 3 + 5 + 7 = 16
따라서 이렇게 더했을 때 도중에 num이 나오면 true, 아니면 false를 반환합니다.
📕 Code
📔 C++
class Solution {
public:
bool isPerfectSquare(int num) {
long long cnt = 0;
for(int i = 1; cnt <= num; i += 2) {
cnt += i;
if(cnt == num) return true;
}
return false;
}
};
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > Math' 카테고리의 다른 글
(C++) - LeetCode (easy) 1025. Divisor Game (0) | 2023.10.11 |
---|---|
(C++, Rust) - LeetCode (easy) 914. X of a Kind in a Deck of Cards (0) | 2023.08.30 |
(C++) - LeetCode (easy) 231. Power of Two (2) | 2023.01.17 |
(Python) - 백준(BOJ) 22938 : 백발백준하는 명사수 (0) | 2022.08.28 |
(Rust) - 백준(BOJ) 15734 : 명장 남정훈 (0) | 2022.08.15 |