Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में स्ट्रिंग में सेल एक से अधिक बार विजिट हो सकता है या नहीं जांचें


समस्या विवरण

एक स्ट्रिंग दी गई है जिसमें डॉट (.) और संख्याएं हैं। डॉट = खाली सेल, संख्या x = x कदम दाएं या बाएं चल सकते हैं। जांचें कि क्या कोई सेल एक से अधिक बार विजिट हो सकता है।

उदाहरण: ".2...2.." → 4था सेल दो तरीकों से विजिट हो सकता है

दृष्टिकोण

विजिटेड सरणी में प्रत्येक सेल की विजिट गिनती ट्रैक करें। प्रत्येक संख्या x के लिए, रेंज [i-x, i+x] में विजिट काउंट बढ़ाएं। अंत में जांचें कि कोई सेल एक से अधिक बार विजिट हुआ है या नहीं।

नोट

दिए गए उदाहरण कोड में बाइनरी ट्री लेवल-वाइज सॉर्टेड जांचने का कोड है जो इस समस्या से मेल नहीं खाता। सही कार्यान्वयन उपरोक्त एल्गोरिदम पर आधारित होगा।

  1. - C++ में कैसे जांचें कि इनपुट न्यूमेरिक है या नहीं

    न्यूमेरिक स्ट्रिंग वैलिडेशन यहां हम देखेंगे कि कैसे जांचें कि दिया गया इनपुट न्यूमेरिक स्ट्रिंग है या सामान्य स्ट्रिंग। न्यूमेरिक स्ट्रिंग केवल 0-9 रेंज के कैरेक्टर्स रखेगी। समाधान बहुत सरल है: हम बस प्रत्येक कैरेक्टर को एक-एक करके देखेंगे और जांचेंगे कि यह न्यूमेरिक है या नहीं। यदि यह न्यूमेरिक है,

  1. - C++ में जांचें कि क्या स्ट्रिंग में सब-स्ट्रिंग है

    यहां हम देखेंगे कि C++ में स्ट्रिंग लाइब्रेरी फंक्शन्स का उपयोग करके स्ट्रिंग्स को कैसे मैच करें। यहां हम सबस्ट्रिंग की घटनाओं को मुख्य स्ट्रिंग में प्राप्त करने के लिए find() ऑपरेशन का उपयोग कर रहे हैं। यह find() मेथड पहली लोकेशन लौटाता है जहां स्ट्रिंग मिली है। यहां हम सभी मैच प्राप्त करने के लिए

  1. - C/C++ में कैसे जांचें कि स्ट्रिंग इंटीजर है?

    यह जांचने के कई तरीके हैं कि स्ट्रिंग इंटीजर है या नहीं और उनमें से एक तरीका isdigit() का उपयोग करके स्ट्रिंग की जांच करना है। उदाहरण #include <iostream> #include <string.h> using namespace std; int main() { char str[] = 3257fg; for (int i = 0; i < strlen(str); i++) {