hiho week 180 register

Ended

Participants:184

Verdict:Accepted
Score:100 / 100
Submitted:2017-12-15 19:43:48

Lang:Python2

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
s = raw_input()
n = int(s)
al = [00]
bl = [00]
fr = 10
fn = 10
lr = 2
ll = 90
while True:
    al.append(fr)
    bl.append(fn)
    if fr > 1e18:
        break
    fr = fr + lr*ll
    fn = fn + ll
    ll = ll*10
    lr = lr+1
l = len(al)
tmp = -1
for i in range(0,l):
    if n>=al[i] and n<al[i+1]:
        tmp = i
        break
a = bl[tmp]
b = al[tmp]
c = (n-b)/tmp+bl[tmp]
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX