10570. 제곱 팰린드롬 수 D3
앞으로 읽어도 뒤로 읽어도 똑같은 문자열을 팰린드롬 혹은 회문이라고 부른다. 어떠한 실수 N이 양의 정수이며, 십진수로 표현했을 때 팰린드롬이면 이 수를 팰린드롬 수라고 부른다.
어떠한 양의 정수 N에 대해서, N과 √N이 모두 팰린드롬이면 이 수를 제곱 팰린드롬 수 라고 부른다.
예를 들어, 121은 제곱 팰린드롬 수인데, 121이 팰린드롬이며, 121의 제곱근인 11 역시 팰린드롬이기 때문이다.
A 이상 B 이하 제곱 팰린드롬 수는 모두 몇 개인가?
[입력]
첫 번째 줄에 테스트 케이스의 수 TC가 주어진다. 이후 TC개의 테스트 케이스가 새 줄로 구분되어 주어진다. 각 테스트 케이스의 첫 번째 줄에 A, B 가 주어진다. (1 ≤ A ≤ B ≤ 1000)
[출력]
각 테스트 케이스 마다 한 줄씩, 제곱 팰린드롬 수의 개수를 출력하라.
입력
| 3 1 9 10 99 100 1000 |
// 전체 테스트케이스 수 // 첫 번째 테스트케이스 A = 1, B = 9 // 두 번째 테스트케이스 A = 10, B = 99 |
출력
| #1 3 #2 0 #3 2 |
// 첫 번째 테스트 케이스 답 // 두 번째 테스트 케이스 |
[코드]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T=Integer.parseInt(br.readLine());
for(int i=1; i<=T; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
int result = 0;
int A=Integer.parseInt(st.nextToken());
int B=Integer.parseInt(st.nextToken());
int A_=A;
int B_=B;
for(;A_<=B_; A_++) {
switch (A_) {
case 1:
case 4:
case 9:
case 121:
case 484:
result++;
break;
default:
break;
}
}
System.out.println("#"+i+" "+result);
}
br.close();
}
}'SWEA(SWExpertacAdemy)' 카테고리의 다른 글
| [SWEA] 7728. 다양성 측정 (자바/JAVA) (0) | 2025.05.09 |
|---|---|
| [SWEA] 1217. [S/W 문제해결 기본] 4일차 - 거듭 제곱 (자바/JAVA) (0) | 2025.05.09 |
| [SWEA] 1289. 원재의 메모리 복구하기 (자바/JAVA) (0) | 2025.05.09 |
| [SWEA] 9317. 석찬이의 받아쓰기 (자바/JAVA) (0) | 2025.05.09 |
| [SWEA] 4406. 모음이 보이지 않는 사람 (자바/JAVA) (0) | 2025.05.09 |