프로그래밍/Algorithm

백준 1748 수 이어 쓰기 1 파이썬

모지사바하 2021. 3. 4. 14:22

www.acmicpc.net/problem/1748

 

1748번: 수 이어 쓰기 1

첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다.

www.acmicpc.net

N = int(input())
nines = [int('9'+('0'*i)) for i in range(0, len(str(N)))]
ans = 0

for i,v in enumerate(nines):
    if i+1 == len(nines):
        ans+=len(str(v)) * (N - sum(nines[:-1]))
    else:
        i+=1
        ans+=i*v
print(ans)        

 

좀 당황스러웠다.

얼추 비슷하게까지는 생각했는데 생각을 이어나가지를 못하겠더라.

결국 다른분 블로그 참고하고나서야 생각을 할수있게되었다.

음..

답답하군...