एल्गोरिदम और डेटा संरचनाएँ

सुंदर बिट-स्ट्रिंग्स

हमें बिट-स्ट्रिंग्स बहुत पसंद हैं। विशेष तौर पर, अगर किसी बिट-स्ट्रिंग में k लगातार 0 न हों, तो हम उसे खासतौर पर सुंदर मानते हैं। दिया गया है कि बिट-स्ट्रिंग की लंबाई n है, तो क्या आप उन सभी अलग-अलग बिट-स्ट्रिंग्स की गिनती कर सकते हैं जो लंबाई n में सुंदर होंगी?

इनपुट

इनपुट में दो पूर्णांक n और k दिए जाते हैं (1 ≤ k ≤ n ≤ 1000)।

आउटपुट

कार्यक्रम को लंबाई n की उन सुंदर बिट-स्ट्रिंग्स की संख्या प्रिंट करनी चाहिए। चूँकि उत्तर बहुत बड़ा हो सकता है, आपको इसे से मोड्यूलो (modulo) करके 출력 करना होगा।

उदाहरण

इनपुट

आउटपुट

5 2

24

व्याख्या

  1. 00100

  2. 00101

  3. 00110

  4. 00111

  5. 01001

  6. 01010

  7. 01011

  8. 01100

  9. 01101

  10. 01110

  11. 01111

  12. 10010

  13. 10011

  14. 10100

  15. 10101

  16. 10110

  17. 10111

  18. 11001

  19. 11010

  20. 11011

  21. 11100

  22. 11101

  23. 11110

  24. 11111

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue