PTA 等差數列

2021-10-10 22:57:11 字數 950 閱讀 5419

問題描述

請寫乙個程式,判斷給定整數序列能否構成乙個等差數列。

輸入說明

輸入資料由兩行構成,第一行只有乙個整數n(n<100),表示序列長度(該序列中整數的個數);

第二行為n個整數,每個整數的取值區間都為[-32768~32767],整數之間以空格間隔。

輸出說明

對輸入資料進行判斷,不能構成等差數列輸出「no」,能構成等差數列輸出表示數列公差(相鄰兩項的差)的絕對值的乙個整數。

輸入樣例 :

樣例1輸入

623 15 4 18 35 11

樣例2輸入

52 6 8 4 10

輸出樣例

樣例1輸出

no樣例2輸出

2

#

include

#include

intmain()

scanf

("%d"

,&n)

;for

(i=0

;i)for

(i=0

;i}for

(;n>=

3;n--)}

printf

("%d"

,a[1

]-a[0]

);return0;

}

鵝,無聊的現在又用c++語法寫了一下

#

include

using

namespace std;

intmain()

} cout<-a[0];

return0;

}

codevs等差數列

題目描述 description 給定n 1 n 100 個數,從中找出盡可能多的數使得他們能夠組成乙個等差數列.求最長的等差數列的長度.輸入描述 input description 第一行是乙個整數n,接下來一行包括了n個數,每個數的絕對值不超過10000000.輸出描述 output descr...

網易等差數列

如果乙個數列s滿足對於所有的合法的i,都有s i 1 s i d,這裡的d也可以是負數和零,我們就稱數列s為等差數列。小易現在有乙個長度為n的數列x,小易想把x變為乙個等差數列。小易允許在數列上做交換任意兩個位置的數值的操作,並且交換操作允許交換多次。但是有些數列通過交換還是不能變成等差數列,小易需...

演算法 等差數列

原理 如果乙個數列從第二項起,每一項與它的前一項的差等於同乙個常數,這個數列就叫做等差數列,這個常數叫做等差數列的公差,公差常用字母d表示。等差數列是常見數列的一種,如果乙個數列從第二項起,每一項與它的前一項的差等於同乙個常數,這個數列就叫做等差 數列,而這個常數叫做等差數列的公差,公差常用字母d表...