ধরুন আমাদের কাছে HH:MM টাইপের একটি ডিজিটাল ঘড়ি আছে। যা ঘন্টা এবং মিনিটে সময় দেখায়। আমাদের ইনপুট হিসাবে কয়েক ঘন্টা এবং মিনিট দেওয়া হয়। লক্ষ্য হল যতবার সব সংখ্যা সমান তা গণনা করা। H=M.
এটি দিনে 3 বার ঘটে, প্রথমে 00:00 মধ্যরাতে, তারপর 11:11 এবং শেষ 22:22 টায়। সময়কে 24 ঘন্টার বিন্যাসে উপস্থাপন করা হয়।
ইনপুট
Input: 12 hours 22 minutes.
আউটপুট
2
ব্যাখ্যা − সময়ের জন্য 00:00 এবং 11:11। 12 ঘন্টার মধ্যে দুবার।
ইনপুট
Input: 48 hours 22 minutes.
আউটপুট
5
ব্যাখ্যা − সময়ের জন্য 00:00 এবং 11:11, 22:22।
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
- ভেরিয়েবল ঘন্টা এবং মিনিট ইনপুট সংরক্ষণ করে।
- ফাংশন কাউন্ট আইডেন্টিকাল (int ঘন্টা, int মিনিট) মিনিট এবং ঘন্টা নেয় এবং নং কাউন্ট ফেরত দেয়। অনেক সময় সব HH;MM ডিজিট একই।
- 00:00 এর জন্য 1 হিসাবে গণনা শুরু করুন।
- প্রতি ঘণ্টার জন্য 11 এবং 22 এবং মিনিট হিসাবে 11 এবং 22 বৃদ্ধির গণনা 1 দ্বারা।
- লুপ শেষ হওয়ার পরে ফলাফলটি ফেরত দিন।
- গণনা হল কাঙ্ক্ষিত ফলাফল।
- গণনা প্রিন্ট করুন।
উদাহরণ
// C++ implementation of the approach #include <bits/stdc++.h> using namespace std; // examples- 11:11 11hrs 11 mins, 22:22 int countIdentical(int hours, int minutes){ // Initialized to 1 because of 00:00 int i, count=1; // For double digit hours for (i = 0; i <= 99 && i < hours; i = i + 11) { // Double digit minutes if ((i % 10) < minutes) count++; } return count; } int main(){ int hours = 48; int minutes = 22; cout <<"Times when all digits are identical in HH:MM :" << countIdentical(hours, minutes); return 0; }
আউটপুট
Times when all digits are identical in HH:MM : 6