আমাদেরকে ধনাত্মক পূর্ণসংখ্যার একটি অ্যারে দেওয়া হয়েছে। লক্ষ্য হল এটিতে উপস্থিত সর্বাধিক সংখ্যক ধারাবাহিক সংখ্যা খুঁজে বের করা। প্রথমত আমরা অ্যারে সাজিয়ে রাখব এবং তারপরে সংলগ্ন উপাদানগুলির তুলনা করব arr[j]==arr[i]+1 (j=i+1), যদি পার্থক্য 1 হয় তাহলে সংখ্যা বৃদ্ধি এবং সূচক i++,j++ elsechange count=1। এখন পর্যন্ত maxc-এ সংরক্ষিত সর্বাধিক গণনা সংরক্ষণ করুন।
ইনপুট
Arr[]={ 100,21,24,73,22,23 }
আউটপুট
অ্যারেতে সর্বাধিক ধারাবাহিক সংখ্যা :4
ব্যাখ্যা − সাজানো অ্যারে হল − { 21,22,23,24,73,100 } আরম্ভ গণনা=1,maxcount=1
<পূর্ব>1. 22=21+1 গণনা=2 maxcount=2 i++,j++2। 23=22+2 গণনা=3 maxcount=3 i++,j++3। 24=23+1 গণনা=4 maxcount=4 i++,j++4। 73=24+1 X গণনা=1 maxcount=4 i++,j++5। 100=73+1 X গণনা=1 maxcount=4 i++, j++সর্বাধিক ধারাবাহিক সংখ্যা হল 4 { 21,22,23,24 }
ইনপুট
Arr[]={ 11,41,21,42,61,43,9,44 }
আউটপুট
অ্যারেতে সর্বাধিক ধারাবাহিক সংখ্যা :4
ব্যাখ্যা − সাজানো অ্যারে হল − { 9,11,21,41,42,43,44,61 } আরম্ভ করা গণনা=1,maxcount=1
<পূর্ব>1. 11=9+1 X গণনা=1 maxcount=1 i++, j++2। 21=11+1 X গণনা=1 maxcount=1 i++,j++3। 41=21+1 X গণনা=1 maxcount=1 i++, j++4। 42=41+1 গণনা=2 maxcount=2 i++, j++5। 43=42+1 গণনা=3 maxcount=3 i++,j++6। 44=43+1 গণনা=4 maxcount=4 i++,j++7। 61=44+1 X গণনা=1 maxcount=4 i++,j++সর্বাধিক ধারাবাহিক সংখ্যা হল 4 { 41,42,43,44 }
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
পূর্ণসংখ্যা অ্যারে Arr[] পূর্ণসংখ্যা সংরক্ষণ করতে ব্যবহৃত হয়।
-
পূর্ণসংখ্যা 'n' অ্যারের দৈর্ঘ্য সঞ্চয় করে।
-
ফাংশন subs( int arr[], int n) একটি অ্যারে নেয়, এটির আকার ইনপুট হিসাবে এবং অ্যারেতে উপস্থিত সর্বাধিক ধারাবাহিক সংখ্যা প্রদান করে৷
-
প্রথমে আমরা sort(arr,arr+n)
ব্যবহার করে অ্যারে সাজাব -
এখন count=1 এবং maxc=1.
শুরু করুন -
প্রথম দুটি উপাদান থেকে শুরু করে, arr[0] এবং arr[1] লুপের জন্য দুটির ভিতরে, ifarr[j]==arr[i]+1 ( j=i+1) তুলনা করুন, যদি সত্য হয় তাহলে সংখ্যা বৃদ্ধি করুন এবং i দ্বারা 1.
-
উপরের শর্তটি মিথ্যা হলে আবার গণনা 1 এ পরিবর্তন করুন। এখন পর্যন্ত সর্বোচ্চ কাউন্টফাউন্ড সহ maxc আপডেট করুন ( maxc=count>maxc?count:maxc)।
-
শেষ পর্যন্ত ফলাফল হিসাবে সর্বাধিক ধারাবাহিক উপাদানের সংখ্যা হিসাবে maxc ফেরত দিন।
উদাহরণ
#include#include namespace ব্যবহার করে std;int subs(int arr[],int n){ std::sort(arr,arr+n); int গণনা =1; int maxc=1; for(int i=0;i maxc?count:maxc; } } maxc;} int main(){ int arr[] ={ 10,9,8,7,3,2,1,4,5,6}; int n =sizeof(arr) / sizeof(int); cout <<"একটি অ্যারেতে সর্বাধিক ধারাবাহিক সংখ্যা উপস্থিত :"< আউটপুট
একটি অ্যারেতে উপস্থিত সর্বাধিক ধারাবাহিক সংখ্যা :10