#include #include using namespace std;

int main() { int N; cin >> N;

vector<int> A(N);
for (int i = 0; i < N; i++) {
    cin >> A[i];
}

int diff = A[1] - A[0];
int ratio = A[1] / A[0];
bool isArithmetic = true;
bool isGeometric = true;

for (int i = 2; i < N; i++) {
    if (A[i] - A[i-1] != diff) {
        isArithmetic = false;
    }
    if (A[i] / A[i-1] != ratio) {
        isGeometric = false;
    }
}

int AN;
if (isArithmetic) {
    AN = A[N-1] + diff;
} else if (isGeometric) {
    AN = A[N-1] * ratio;
}

cout << AN << endl;

return 0;
猜猜下一个时间限制:10s 内存限制:2560MB输入文件名:Guessin 输出文件名:Guessout问题描述 给定一个正整数数组A数组中的元素A0A1AN - 1单调递增且构成一个等差数列或者等比数列请你判断A到底是等差数列还是等比数列并且计算AN的值数据保证An不可能既是等差数列又是等比数列输入格式 第一行是一个整数N; 第二行是N个由空格隔开的整数分别代表A0A1AN -

原文地址: https://www.cveoy.top/t/topic/hWlA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录