E-masala.

M = int(1e9 + 7)
def func(a, p):
   s = 1
   e = p - 2
   while e > 0:
       if e % 2 == 1:
           s = (s * a) % p
       a = (a * a) % p
       e //= 2
   return s
def binco(n, k):
   if k > n:
       return 0
   if k == 0 or k == n:
       return 1
   h = 1
   z = 1
   for i in range(k):
       h = (h * (n - i)) % M
       z = (z * (i + 1)) % M
   return (h * func(z, M)) % M
n, m = map(int, input().split())
n -= 1
m -= 1
print(binco(n + m, n))

Mamurjon Mirzapolatov yechimi Py da acc bo'ladi.



I-masala

a=[0]*50010
v=[0]*50010
pri=[0]*50010
tot=0
n=int(input())
for i in range(2,n+1):
   if not v[i]:
       tot+=1
       pri[tot]=i
   for j in range(1,tot+1):
       if i*pri[j]>n:
           break
       v[i*pri[j]]=1
       if i%pri[j]==0:
           break
ans=2**(n-1)
def dfs(dep,tmp,num,up):
   global ans
   if num>n or dep>=18:
       return
   if num==n and ans>tmp:
       ans=tmp
       return
   for i in range(1,up+1):
       if tmp*pri[dep]>ans:
           break
       tmp*=pri[dep]
       dfs(dep+1,tmp,num*(i+1),up+1)
   return
dfs(1,1,1,64)
print(ans)

Mamurjon Mirzapolatov yechimi


n = int(input())
mn = 1e30
for i in range(1001):
    x = 1
    m = i
    k = True
    while m:
        x *= 2
        m -= 1
        if x > mn:
            k = False
            break
    if not k or i + 1 > n:
        break
    if n == i + 1:
        mn = min(mn, x)
    for i2 in range(1, i + 1):
        x2 = x
        m = i2
        k = True
        while m:
            x2 *= 3
            m -= 1
            if x > mn:
                k = False
                break
        if not k or i + i2 + i * i2 + 1 > n:
            break
        if n == i + i2 + i * i2 + 1:
            mn = min(mn, x2)
        for i3 in range(1, i2 + 1):
            x3 = x2
            m = i3
            k = True
            while m:
                x3 *= 5
                m -= 1
                if x > mn:
                    k = False
                    break
            if not k or i + i2 + i3 + 1 + i * i2 + i2 * i3 + i * i3 + i * i2 * i3 > n:
                break
            if n == i + i2 + i3 + 1 + i * i2 + i2 * i3 + i * i3 + i * i2 * i3:
                mn = min(mn, x3)
            for i4 in range(1, i3 + 1):
                x4 = x3
                m = i4
                k = True
                while m:
                    x4 *= 7
                    m -= 1
                    if x > mn:
                        k = False
                        break
                if not k or i + i2 + i3 + i4 + 1 + i * i2 + i * i3 + i * i4 + i2 * i3 + i2 * i4 + i3 * i4 + i * i2 * i3 + i * i2 * i4 + i * i3 * i4 + i2 * i3 * i4 + i * i2 * i3 * i4 > n:
                    break
                if n == i + i2 + i3 + i4 + 1 + i * i2 + i * i3 + i * i4 + i2 * i3 + i2 * i4 + i3 * i4 + i * i2 * i3 + i * i2 * i4 + i * i3 * i4 + i2 * i3 * i4 + i * i2 * i3 * i4:
                    mn = min(mn, x4)
                for i5 in range(1, i4 + 1):
                    x5 = x4
                    m = i5
                    k = True
                    while m:
                        x5 *= 11
                        m -= 1
                        if x > mn:
                            k = False
                            break
                    if not k or i + i2 + i3 + i4 + i5 + i * i2 + i * i3 + i * i4 + i * i5 + i2 * i3 + i2 * i4 + i2 * i5 + i3 * i4 + i3 * i5 + i4 * i5 + i * i2 * i3 + i * i2 * i4 + i * i2 * i5 + i * i3 * i4 + i * i3 * i5 + i * i4 * i5 + i2 * i3 * i4 + i2 * i3 * i5 + i2 * i4 * i5 + i3 * i4 * i5 + i * i2 * i3 * i4 + i * i2 * i3 * i5 + i * i2 * i4 * i5 + i * i3 * i4 * i5 + i2 * i3 * i4 + i5 + i * i2 * i3 * i4 * i5 > n:
                        break
                    if n == i + i2 + i3 + i4 + i5 + i * i2 + i * i3 + i * i4 + i * i5 + i2 * i3 + i2 * i4 + i2 * i5 + i3 * i4 + i3 * i5 + i4 * i5 + i * i2 * i3 + i * i2 * i4 + i * i2 * i5 + i * i3 * i4 + i * i3 * i5 + i * i4 * i5 + i2 * i3 * i4 + i2 * i3 * i5 + i2 * i4 * i5 + i3 * i4 * i5 + i * i2 * i3 * i4 + i * i2 * i3 * i5 + i * i2 * i4 * i5 + i * i3 * i4 * i5 + i2 * i3 * i4 + i5 + i * i2 * i3 * i4 * i5:
                        mn = min(mn, x5)
print(mn)

Xaydaraliyev Jahonali yechimi