
⚠️ 주의!
SWEA에서 낸 코딩 문제에 대한 해답이 들어있습니다.
열람 시 주의해주세요.
SWEA에서 낸 코딩 문제에 대한 해답이 들어있습니다.
열람 시 주의해주세요.
[SW Expert Academy] 1926. 간단한 369게임
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
절대로 정규식이나 replace로는 풀 수 없다. 방법이 여러 가지 있다. charAt등의 방법을 쓰는 경우도 있는데, 이 경우 숫자를 String 변환해야한다.
내 경우는 숫자가 1000까지 있으므로, 그냥 모든 방식을 나머지 연산하여 3 6 9를 확인하고 그에 따라 -의 개수를 카운팅했다. 그리고 그만큼을 숫자 대신 출력해주면 된다. 만약 -의 개수가 0이면 그대로 숫자를 출력한다.
정답
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= N; i++) { // 1000까지이므로 나눠서 3 6 9면 clap을 추가
int clap = 0;
if (i % 10 == 3 || i % 10 == 6 || i % 10 == 9) clap++;
if (i / 10 % 10 == 3 || i / 10 % 10 == 6 || i / 10 % 10 == 9) clap++;
if (i / 100 % 10 == 3 || i / 100 % 10 == 6 || i / 100 % 10 == 9) clap++;
if (i / 1000 % 10 == 3 || i / 1000 % 10 == 6 || i / 1000 % 10 == 9) clap++;
if(clap == 0) sb.append(i);
else { for(int k = 0; k < clap; k++) sb.append("-"); }
sb.append(" ");
}
System.out.print(sb.toString().trim());
}
}'코테런 > SWEA(알고리즘 수업)' 카테고리의 다른 글
| [코딩 테스트 RUN] SWEA 수업 : 1215. 회문1 (0) | 2026.03.10 |
|---|---|
| [코딩 테스트 RUN] SWEA 수업 : 1213. String (0) | 2026.03.10 |
| [코딩 테스트 RUN] SWEA 수업 : 25052. 등산로 (0) | 2026.03.09 |
| [코딩 테스트 RUN] SWEA 수업 : 9490. 풍선팡 (0) | 2026.03.09 |
| [코딩 테스트 RUN] SWEA 수업 : 12712. 파리퇴치3 (0) | 2026.03.09 |