-
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int a = scanner.nextInt(); int b = scanner.nextInt(); int c = scanner.nextInt(); int[] count = new int[10]; // 0 ~ 9 10 String total = String.valueOf(a * b * c); for (int i = 0; i < total.length(); i++) { count[total.charAt(i) - '0']++; // char형에서 int형으로 반환할때 - '0'을 해준 = 아스키코드48 } for (int value : count) { System.out.println(value); } } }
- 다른 풀이 참조함
- String으로 받아서 char배열로 쪼개고 정수 비교할 생각을 했는데 char 값에서 어떻게 int 비교할지 생각이 안남
1. 아스키코드 0이 48번이니까 - '0' 을 해줘서 10진수로 비교한다는점
2. 0~9까지 카운트를 세는거니까 배열만들고 그 안에서 비교하고 카운팅