문제 링크

문제 설명

예시

[input]
10 7 100

[output]
9


[input]
2 1 100000000000

[output]
1000000000


[input]
1000000000 1000000000 100

[output]
0


[input]
1234 56789 314159265

[output]
254309

사고의 흐름

모범답안

1. 여기를 누르면 답이 보입니다
def getLen(a, b, x, maxN):
    n = 1
    while(n <= maxN):
        p = getPrice(a, b, n)
        if x < p: return len(str(n))-1
        if x == p: return len(str(n))
        n = n*10
def getPrice(a, b, n):
    return a*n + b*(len(str(n)))
def answer(a, b, x):
    maxN = 10**9
    if x < a+b: return 0
    if x >= getPrice(a, b, maxN): return maxN
    
    _len = getLen(a, b, x, maxN)
    n = (x-(b*_len))//a
    for i in range(n+1, 0, -1):
        p = getPrice(a, b, i)
        if x >= p: return i
a, b, x = map(int, input().split())
print(answer(a, b, x))
2. 여기를 누르면 답이 보입니다