Advertisement
Iam_Sandeep

Untitled

Jul 9th, 2022
669
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.57 KB | None | 0 0
  1. def find(m,k,s):
  2.     ans=0
  3.     s=[int(i) for i in s]
  4.     n=len(s)
  5.     def dfs(i,j,c):
  6.         nonlocal ans
  7.         if i==n:
  8.             if c==k:
  9.                 ans+=1
  10.             return
  11.         #prev element is odd
  12.         if i==0 or s[j]%2==1:
  13.             if i==0 or i-j>=m: #either include
  14.                 dfs(i+1,i,c)
  15.             dfs(i+1,j,c)       #or exclude
  16.         #prev element is even
  17.         else:
  18.             if i-j>=m:     #include
  19.                 dfs(i+1,i,c+1)
  20.             dfs(i+1,j,c)   #exclude
  21.     dfs(0,0,0)
  22.     print(ans)
  23. find(2,3,"232387421")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement