간단한 369게임 (D2)
문제 링크
- 1부터 주어진 정수 N까지 모든 숫자를 369 게임의 규칙에 맞게 출력하는 문제
- 3, 13 일땐 -로 출력되지만 33 은 -- 333은 --- 으로 출력돼야 한다
- 그래서 1부터 N까지의 숫자를 반복문을 돌릴때, 해당 숫자를 문자열로 만들어주고, 해당 문자열이 3으로 나눠지는 지를 카운트 해줬다 (0은 아니어야함)
- 해당 카운트 수 만큼 output이 될 스트링빌더에 append 해주었다
Solution
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
int N = sc.nextInt();
String num;
char temp;
int cnt = 0;
for (int i = 1; i <= N; i++) {
num = Integer.toString(i);
for (int j = 0; j < num.length(); j++) {
temp = num.charAt(j);
if ((int) temp % 3 == 0 && temp != '0') {
cnt++;
}
}
if (cnt > 0) {
while (cnt > 0) {
sb.append('-');
cnt--;
}
} else {
sb.append(num);
}
sb.append(' ');
}
System.out.println(sb);
}
}