এখানে আমরা একটি সমস্যা দেখব, যা বলতে পারে একটি স্ট্রিং বা সংখ্যা ১, ১৪ বা ১৪৪-এর কনক্যাটেনেশন দিয়ে তৈরি হয়েছে কিনা। ধরুন একটি স্ট্রিং "111411441" - এটি বৈধ, কিন্তু "144414" বৈধ নয়।
টাস্কটি সহজ: লাস্ট থেকে সিঙ্গেল ডিজিট, ডাবল ডিজিট এবং ট্রিপল ডিজিট নম্বর ফেচ করুন এবং চেক করুন তারা ১, ১৪ বা ১৪৪-এর সাথে মেলে কিনা। যদি একটি মেলে, তবে সংখ্যাকে সেটি দিয়ে ভাগ করুন এবং প্রক্রিয়াটি পুরো সংখ্যা শেষ না হওয়া পর্যন্ত চলতে দিন।
উদাহরণ
#include <iostream> #include <cmath> using namespace std; bool checkNumber(long long number) { int n = number; while (n > 0) { if (n % 1000 == 144) n /= 1000; else if (n % 100 == 14) n /= 100; else if (n % 10 == 1) n /= 10; else { return false; } } return true; } int main() { long long n = 111411441; if(checkNumber(n)){ cout << "Valid number"; } else { cout << "Invalid number"; } }আউটপুট
Valid number