CCF认证——201509-1数列分段(C++)

试题编号: 201509-1
试题名称: 数列分段
时间限制: 1.0s
内存限制: 256.0MB
问题描述: 问题描述
    给定一个整数数列,数列中连续相同的最长整数序列算成一段,问数列中共有多少段?
输入格式
    输出一个整数,表示给定的数列有多个段。
样例输入
  8
  8 8 8 0 12 12 8 0
样例输出
  5
样例说明
    8 8 8是第一段,0是第二段,12 12是第三段,倒数第二个整数8是第四段,最后一个0是第五段。
评测用例规模与约定
    1 ≤ n ≤ 1000,0 ≤ ai ≤ 1000。

代码如下:

#include<iostream>
using namespace std;

int main()
{
    int n;
    cin>>n;
    int *array;
    array=new int[n];
    for(int i=0;i<n;i++)
        cin>>array[i];
    int count=1; 
    for(int i=1;i<n;i++)//从第二位数开始遍历起 
    {
        //若后一位与前一位数不相等,则加1
        if(array[i]!=array[i-1]) 
            count++;
    }
    cout<<count;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/imprincess/article/details/79485384