문제 링크
swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXO72aaqPrcDFAXS
C++ 풀이
#include <iostream>
#include <string>
using namespace std;
bool is_palindrome(int n) {
string s = to_string(n);
int start = 0, end = s.length() - 1, val = 0;
while (start + val < end - val) {
if (s[start] != s[end])
return false;
val++;
}
return true;
}
int main() {
int T;
cin >> T;
for (int i = 1; i <= T; i++) {
int A, B, answer = 0;
cin >> A >> B;
for (int j = ceil(sqrt(A)); j <= floor(sqrt(B)); j++) {
if (is_palindrome(j) && is_palindrome(pow(j, 2)))
answer++;
}
cout << "#" << i << " " << answer << "\n";
}
return 0;
}
A의 제곱근과 B의 제곱근을 범위로 두고 팰린드롬 수의 개수를 확인하였다.
반응형
'알고리즘 · 코딩' 카테고리의 다른 글
[프로그래머스] 3진법 뒤집기 (1) | 2021.02.15 |
---|---|
[프로그래머스] 풍선 터트리기 (0) | 2021.02.13 |
[SWEA 9280] 진용이네 주차타워 (0) | 2021.02.05 |
[프로그래머스] 폰켓몬 (0) | 2021.02.02 |
[프로그래머스] 내적 (0) | 2021.02.01 |