判断一个数列不是等差数列,要比判断一个数列是等差数列比较容易。

bool progressive = true;
for (int i = 0; i < A.size() - 1; ++i){
    if (A[i+1] - A[i] != A[1] - A[0]){
        progressive = false;
        break;
    }
}

当然也可以等差数列的性质:

bool progressive = true;
int d = A[1] - A[0]
for (int i = 2; i < A.size(); ++i){
    if (A[i] != A[i-1] + d) {
        progressive = false;
        break;  
    }

}
posted on 2016-09-09 10:53  未雨愁眸  阅读(346)  评论(0编辑  收藏  举报