Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình để chuyển đổi mảng đã cho thành cấp số học bằng cách thêm một phần tử.
Đối với điều này, chúng tôi sẽ được cung cấp một mảng. Nhiệm vụ của chúng ta là chuyển đổi mảng đã cho thành một cấp số cộng bằng cách thêm một phần tử vào nó và trả về phần tử đã thêm. Nếu không thể, hãy trả về -1.
Ví dụ
#include<bits/stdc++.h> using namespace std; //returning the number to be added int print_number(int arr[], int n){ sort(arr,arr+n); int d = arr[1] - arr[0]; int numToAdd = -1; bool numAdded = false; for (int i = 2; i < n; i++) { int diff = arr[i] - arr[i - 1]; if (diff != d) { if (numAdded) return -1; if (diff == 2 * d) { numToAdd = arr[i] - d; //if number has been added numAdded = true; } //if not possible else return -1; } } //returning last element + //common difference if (numToAdd == -1) return (arr[n - 1] + d); //else return the chosen number return numToAdd; } int main() { int arr[] = { 1, 3, 5, 7, 11, 13, 15 }; int n = sizeof(arr)/sizeof(arr[0]); cout << print_number(arr, n); }
ĐẦU RA
9