एल्गोरिथ्म्स और डेटा स्ट्रक्चर्स

सर्वश्रेष्ठ मेलकर्ता

आपने सबसे साधारण डेटिंग ऐप बनाने का फैसला किया है। इसके लिए आपने Group A में मौजूद लोगों की ऊँचाइयों को a₁, a₂, ..., aₙ और Group B में मौजूद लोगों की ऊँचाइयों को b₁, b₂, ..., bₘ के रूप में इकठ्ठा करने का निर्णय लिया है। अब आप अधिकतम संभव जोड़ों (pairs) को मिलाना चाहते हैं, ध्यान रहे कि एक व्यक्ति एक ही बार मैचींग में शामिल हो सकता है। आपको लगता है कि यह जोड़ी तब ठीक रहेगी, जब:
  • Group B का व्यक्ति, Group A के व्यक्ति से x से अधिक छोटा न हो, और
  • Group B का व्यक्ति, Group A के व्यक्ति से y से अधिक लंबा न हो।
आप जितने अधिक हो सके, उतने जोड़े मिलाना चाहते हैं।

इनपुट

इनपुट की पहली पंक्ति में 4 पूर्णांक n, m (1 ≤ n, m ≤ 10^5), x, और y (0 ≤ x, y ≤ 10^9) दिए होते हैं — जो Group A में मौजूद व्यक्तियों की संख्या, Group B में मौजूद व्यक्तियों की संख्या, और उचित ऊँचाई अंतराल की सीमाओं को दर्शाते हैं।

आउटपुट

कार्यक्रम को मिलान किए गए जोड़ों की अधिकतम संख्या प्रिंट करनी चाहिए।

उदाहरण

इनपुट
आउटपुट
6 2 0 0 1 2 3 4 5 6 6 7
1
3 3 1 1 4 5 6 3 4 7
3
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

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