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

उन्नत डिक्शनरी संचालन

आपके पास एक खाली डिक्शनरी और q क्वेरी हैं। प्रत्येक क्वेरी निम्नलिखित तीन प्रकारों में से एक हो सकती है:

  • टाइप 1: डिक्शनरी में एक स्ट्रिंग इनसर्ट करना।

  • टाइप 2: डिक्शनरी में किसी स्ट्रिंग की मौजूदगी की जाँच करना।

  • टाइप 3: डिक्शनरी से किसी स्ट्रिंग को डिलीट करना।

आपका कार्य एक ऐसा प्रोग्राम लिखने का है जो इन क्वेरी को प्रभावी ढंग से प्रोसेस करे।

टाइप 2 की क्वेरी के लिए, यदि स्ट्रिंग डिक्शनरी में मौजूद है, तो आउटपुट में Yes देना है, अन्यथा No देना है।

इनपुट

इनपुट की पहली पंक्ति में एक पूर्णांक q (1 ≤ q ≤ 100 000) दिया गया है, जो क्वेरी की कुल संख्या दर्शाता है।

अगली q पंक्तियाँ क्वेरी का विवरण प्रस्तुत करती हैं। प्रत्येक पंक्ति की शुरुआत एक पूर्णांक type (1, 2, या 3) से होती है, जो क्वेरी के प्रकार को दर्शाता है:

  • अगर type = 1 है: इस पंक्ति में उसके बाद एक स्पेस और फिर स्ट्रिंग s (1 ≤ |s| ≤ 1000) होगी, जिसे डिक्शनरी में इनसर्ट करना है। यह स्ट्रिंग केवल लोअरकेस अंग्रेज़ी अक्षरों से बनी होती है।

  • अगर type = 2 है: इस पंक्ति में उसके बाद एक स्पेस और फिर स्ट्रिंग s (1 ≤ |s| ≤ 1000) होगी, जिसकी डिक्शनरी में मौजूदगी चेक करनी है। यह स्ट्रिंग केवल लोअरकेस अंग्रेज़ी अक्षरों से बनी होती है।

  • अगर type = 3 है: इस पंक्ति में उसके बाद एक स्पेस और फिर स्ट्रिंग s (1 ≤ |s| ≤ 100) होगी, जिसे डिक्शनरी से डिलीट करना है। यह स्ट्रिंग केवल लोअरकेस अंग्रेज़ी अक्षरों से बनी होती है।

यह गारंटी दी जाती है कि सभी क्वेरी में दी गई स्ट्रिंग्स की कुल लंबाई से अधिक नहीं होगी।

आउटपुट

प्रत्येक टाइप 2 की क्वेरी के लिए, यदि संबंधित स्ट्रिंग डिक्शनरी में मौजूद है तो Yes प्रिंट करें, अन्यथा No प्रिंट करें।

उदाहरण

इनपुट

आउटपुट

7 1 abc 1 xyz 2 abc 3 abc 2 abc 2 xyz 2 abo

Yes No Yes No

Constraints

Time limit: 4 seconds

Memory limit: 512 MB

Output limit: 1 MB

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