-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgivenLenandSum489C.py
48 lines (45 loc) · 921 Bytes
/
givenLenandSum489C.py
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
def maxLimitNo(m,s):
if(m*9<s):
return "-1"
if(m>1 and s==0):
return "-1"
i=0;ans="";flag=True
while(i<m):
if(not flag):
i+=1
ans+="0"
continue
num=s-9
if(num>=0):
ans+="9"
s-=9
elif(num<0):
ans+=str(s)
flag=False
i+=1
return ans
def minNumber(m,s):
if(m*9<s or (m>1 and s<1)):
return "-1"
if(m==1 and s==0):
return "0"
i=0;ans="1";flag=True
n=s-(m-1)*9
if(n>0):
s-=n
m-=1
ans=str(n)
else:
s-=1
m-=1
ans2=maxLimitNo(m,s)
if(ans2=="-1"):
if(m<=0):
return ans;
ans2=""
while(i<m):
ans2+="0"
i+=1
return ans+ans2[::-1]
m,s=map(int,input().split(" "))
print(minNumber(m,s),maxLimitNo(m,s),sep=" ")