Java/Java 알고리즘
백준 2154번 수 이어 쓰기 3 JAVA 구현해보기
kimc
2022. 4. 23. 19:21
```
백준 2154번 수 이어 쓰기 3 JAVA 구현해보기
```

이번 글을 통해 배워갈 내용
- 백준 2154번 풀이
https://www.acmicpc.net/problem/2154
2154번: 수 이어 쓰기 3
첫째 줄에 N(1 ≤ N ≤ 100,000)이 주어진다.
www.acmicpc.net
백준 2154번 수 이어 쓰기 3은
난이도 브론즈 등급의 문제로서
아래와 같이 1부터 연속적인 수로 이루어진 문자열이 주어질 때
1234567891011121314151617181920212223.....
해당되는 문자열에서
입력된 수를
앞에서부터 몇 번째 위치인지 출력해주는 문제입니다
30분 정도 위에 링크를 방문하셔서 풀어보시고
안 풀리시는 경우에만 아래 해답을 봐주시면 감사하겠습니다.
입력된 수는 자기 자신의 위치에서는 무조건 존재하기 때문에
1부터 자기 자신까지 수를 문자열로 표시하고
해당되는 문자열에서
입력된 수의 위치를 출력해줍니다.
코드에서는 0부터 시작해서 1을 더해야 하는 번거로움을 제거하였습니다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
static final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
public static void main(String[] args) throws IOException {
// 입력
final int inputNum = Integer.parseInt(br.readLine());
// 해당 값까지의 연속된 모든 숫자
StringBuilder sb = new StringBuilder();
for (int i=0;i<=inputNum;i++){
sb.append(i);
}
// 인덱스를 찾아서 출력
System.out.print(sb.toString().indexOf(String.valueOf(inputNum)));
}
}
//codemasterkimc.tistory.com [김씨의 코딩 스토리]
읽어주셔서 감사합니다
무엇인가 얻어가셨기를 바라며
오늘도 즐거운 코딩 하시길 바랍니다 ~ :)
728x90