less than 1 minute read

문제 풀이 방식

  • 자리수가 증가할때마다 1, 2, 3… 이런식으로 한개씩 늘려서 세준다.

문제 풀이 (Java)

import java.io.BufferedReader;  
import java.io.BufferedWriter;  
import java.io.InputStreamReader;  
import java.util.StringTokenizer;  
  
public class boj1748 {  
    static int N;  
    public static void main(String[] args) throws Exception {  
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  
        StringTokenizer st = new StringTokenizer(br.readLine());  
        N = Integer.parseInt(st.nextToken());  
  
        int pow = 10;  
        int res = 0;  
        int cnt = 1;  
  
        for(int i = 1; i <= N; i++){  
            if( i == pow ){  
                cnt++;  
                pow *= 10;  
            }  
  
            res += cnt;  
        }  
  
        System.out.println(res);  

  
    }  
}

Leave a comment