Algorithm/BOJ(Baekjoon Online Judge)
[백준 - 2774번] 아름다운 수 - Java //Wello Horld//
koucop
2020. 3. 5. 13:58
이번에는 BOJ의 2774번 문제 "아름다운 수" 를 풀어보도록 하자
입력으로 첫째 줄에 테스트 케이스의 개수 T가 주어지고, 다음 줄부터 아름다운 정도를 알고 싶은 수 X 가 주어진다.
출력으로 각 테스트 케이스마다 X의 아름다운 정도를 한 줄에 하나씩 출력하면 되는 문제이다.
성공한 코드는 아래와 같다.
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for(int i = 0; i < T; i++){
long X = Long.parseLong(br.readLine());
boolean[] arr = new boolean[10];
while(X != 0){
arr[(int) (X % 10L)] = true;
X /= 10;
}
int cnt = 0;
for(int j = 0; j < 10; j++){
if(arr[j]) cnt++;
}
bw.write(cnt + "\n");
}
bw.flush();
br.close();
bw.close();
}
}
문제 : https://www.acmicpc.net/problem/2774
2774번: 아름다운 수
윤정이는 뭐든지 아름다운 것이 좋다고 생각한다. 그래서 윤정이는 사물을 볼 때 자신이 정한 방법으로 아름다운 정도를 평가한다. 윤정이는 수를 볼 때도 이런 아름다운 수의 정도를 따지는데, 윤정이에게 있어서 아름다운 수의 정도는 그 수를 이루고 있는 10진수의 중복되지 않은 숫자의 개수를 의미한다. 예를 들어 122이라는 수는 1과 2 라는 2개의 숫자로 이루어져 있으므로 아름다운 정도가 2가 된다. 윤정이의 방법으로 여러 수들의 아름다운 정도를 알아보자
www.acmicpc.net
혹시 코드에 이상한 부분이나 틀린 부분이 있던지, 이해가 안가는 부분이 있다면 댓글로 알려주세요