'666'이 들어간 숫자중 N번째로 작은 수를 출력하라!
1666 2666 3666~~
처럼 '666'이 포함된 숫자를 찾아가면서
N번째는 어떤 숫자인지 출력하는 문제입니다
1. num = 665부터 1씩 계속 증가시킵니다
2. num을 String으로 바꾸고 String.contains("666")을 이용해 '666'이 포함됐는지 판단합니다
3. 포함되어있다면 count += 1;을 하고 n번째가 나올때까지 반복합니다
코드입니다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int num = 665;
int count = 0;
while (count < n) {
if (String.valueOf(num).contains("666")) {
count += 1;
}
num += 1;
}
System.out.println(num - 1);
}
}
지금 와서 보면
num += 1;
if (String.valueOf(num).contains("666")
으로 순서를 바꿔서
마지막에
Syste.out.print(num); 으로 고치는게
더 깔끔한것 같네요
'백준 문제풀기 > JAVA' 카테고리의 다른 글
[백준 1546 JAVA 자바] 평균 (0) | 2023.07.30 |
---|---|
[백준 1475 JAVA 자바] 방 번호 (0) | 2023.07.30 |
[백준 1427 JAVA 자바] 소트인사이드 (0) | 2023.07.30 |
[백준 1330 JAVA 자바] 두 수 비교하기 (0) | 2023.07.30 |
[백준 1316 JAVA 자바] 그룹 단어 체커 (0) | 2023.07.30 |