পূর্ণসংখ্যার একটি অ্যারের সাথে দেওয়া এবং কাজটি হল একটি ফাংশন ব্যবহার করে একটি প্রদত্ত অ্যারের বিটোনিসিটি গণনা করা৷
একটি অ্যারের বিটোনিসিটি হল −
- শুরু করা হয়েছে
- পরবর্তী উপাদানটি আগের মানের থেকে বড় হলে 1 এ বৃদ্ধি করা হয়
- কমিয়ে 1 করা হয় যখন পরবর্তী উপাদানটি আগের মানের থেকে কম হয়
উদাহরণ
Input-: arr[] = { 1,4,3,5,2,9,10,11}
Output-: Bitonicity of an array is : 3 ব্যাখ্যা -
- বিটোনিসিটি গণনা ভেরিয়েবল শুরু করা যাক 0 দিয়ে temp বলা যাক।
- একটি অ্যারের প্রথম উপাদান থেকে শুরু করুন যা 1। এখন তুলনা করুন arr[i] এবং arr[i-1] অর্থাৎ 4 এবং 1 এখানে তুলনা করুন 4 1 এর থেকে বড় যার ফলে 1 এর সাথে তাপমাত্রা বৃদ্ধি পায়। একইভাবে 4 এবং 3 তুলনা করুন যেহেতু 3 4 এর চেয়ে কম তাপমাত্রার মান হ্রাস করে।
- টেম্পের চূড়ান্ত মান প্রিন্ট করুন যা 3
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
- একটি অ্যারের সমস্ত উপাদান অতিক্রম করে চলুন বলি arr[n] যেখানে n একটি অ্যারের আকার হয়
- যদি arr[i]> arr[i-1], bitonicity =bitonicity + 1 এর চেয়ে
- যদি arr[i]
- যদি arr[i] =arr[i-1], bitonicity =bitonicity (অপরিবর্তিত) থেকে
অ্যালগরিদম
Start
Step 1-> Declare function to calculate bitonicity of an array
int cal_bitonicity(int arr[], int n)
set int temp = 0
Loop For int i = 1 and i < n and i++
IF (arr[i] > arr[i - 1])
Increment temp++
End
Else IF (arr[i] < arr[i - 1])
Decrement temp—
End
return temp
step 2-> In main()
declare int arr[] = { 1,4,3,5,2,9,10,11}
set int n = sizeof(arr) / sizeof(arr[0])
Call cal_bitonicity(arr, n)
Stop উদাহরণ
#include <iostream>
using namespace std;
// calculate bitonicity
int cal_bitonicity(int arr[], int n) {
int temp = 0;
for (int i = 1; i < n; i++) {
if (arr[i] > arr[i - 1])
temp++;
else if (arr[i] < arr[i - 1])
temp--;
}
return temp;
}
int main() {
int arr[] = { 1,4,3,5,2,9,10,11};
int n = sizeof(arr) / sizeof(arr[0]);
cout<<"Bitonicity of an array is : " <<cal_bitonicity(arr, n);
return 0;
} আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে
Bitonicity of an array is : 3