Kiểm tra một dãy số nguyên có là dãy cấp số cộng hay không


Submit solution

Points: 1
Time limit: 1.0s
Memory limit: 977M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Cho dãy số nguyên gồm n phần tử \(a_1,a_2,...,a_n\) dãy được gọi là cấp số cộng nếu \( a_2-a_1 = a_3-a_2 = a_4-a_3 = ... =a_n - a_{n-1} \) bằng hằng số d gọi là công sai

Bài toán đặt ra là bạn kiểm tra một dãy cho trước có phải là dãy cấp số cộng với một công sai nào đó không biết rằng công sai có thể âm, có thể bằng 0 hoặc dương

Input

Dòng đầu là số nguyên n \((3<=n<=1000)\) là số phần tử của dãy

Dòng tiếp theo chứa n số nguyên có giá trị tuyệt đối không vượt quá \(10^4\)

Output

Nếu dãy là cấp số cộng hãy xuất ra "Day la day cap so cong voi cong sai d" trong đó d là công sai của dãy

Nếu dãy không là cấp số cộng xuất ra "Day khong la day cap so cong"

Ví dụ 1

Input

5
3 4 5 6 7

Output

Day la day cap so cong voi cong sai 1

Ví dụ 2

Input

5
5 3 1 -1 -3

Output

Day la day cap so cong voi cong sai -2

Ví dụ 3

Input

5
1 2 3 5 4

Output

Day khong la day cap so cong
tichpx

Comments


  • 0
    client_cntt6_k62  commented on Sept. 7, 2024, 9:08 a.m.

    include<iostream>

    include<math.h>

    using namespace std; bool csc(int a[], int n){ if(n < 2){ return false ; } int d = a[1] - a[0]; for(int i = 2 ; i < n ; i++){ if(a[i] - a[i - 1] != d){ return false; } } return true ; } int main(){ int n ; cin >> n; int a[n]; for(int i = 1 ; i < n; i++){ cin >> a[i];
    } if(csc(a, n)){ cout << "YES" << endl; } else { cout << "NO" << endl; } return 0; }


  • 0
    client_cntt6_k62  commented on Sept. 7, 2024, 5:30 a.m.

    nhầm lẫn