Baekjoon Online Judge/Java
[Baekjoon Online Judge] 1748 - 수 이어 쓰기 1 / Java
doooona
2021. 5. 25. 17:59
https://www.acmicpc.net/problem/1748
1748번: 수 이어 쓰기 1
첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다.
www.acmicpc.net
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int answer = 0;
/*
* 1 ~ 9 : 1
* 10 ~ 99 : 2
* 100 ~ 999 : 3
* ...
* 10000000 ~ 99999999 : 8
* n ~ end(end = n * 10 - 1) : len
* */
for(int len = 1, n = 1; n <= N; len++, n*=10) {
int end = n * 10 - 1;
if(end > N) {
end = N;
}
answer += (end - n + 1) * len;
}
System.out.println(answer);
}
}