Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chương trình C++ tính Bitonicity của mảng

Bitonicity của mảng: khởi tạo 0. Duyệt từ phần tử thứ 2, nếu arr[i] > arr[i-1] thì +1, nếu arr[i] < arr[i-1] thì -1, bằng nhau thì không đổi.

Ví dụ

Input: arr[] = {1,4,3,5,2,9,10,11} -> Output: Bitonicity = 3
Giải thích: 4>1 (+1), 3<4 (-1), 5>3 (+1), 2<5 (-1), 9>2 (+1), 10>9 (+1), 11>10 (+1) => Tổng = 3

Thuật toán

Bắt đầu
Bước 1: Hàm cal_bitonicity(arr[], n)
    temp = 0
    Với i từ 1 đến n-1:
        Nếu arr[i] > arr[i-1] -> temp++
        Nếu arr[i] < arr[i-1] -> temp--
    Trả về temp
Bước 2: main()
    arr = {1,4,3,5,2,9,10,11}
    n = 8
    In cal_bitonicity(arr, n)
Kết thúc

Ví dụ code

#include <iostream>
using namespace std;

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 cua mang: " << cal_bitonicity(arr, n);
    return 0;
}

Kết quả

Bitonicity cua mang: 3