关闭

Codeforces Round #332 (Div. 2) C. Day at the Beach

128人阅读 评论(0) 收藏 举报
分类:

题意:就是给一个序列,然后划分区间,每个区间自己排序之后的结果和整体排序的结果是一样的,问最多划分多少区间。

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
const int maxm=1e5+10;
int a[maxm];
int b[maxm];
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        for(int i=0;i<n;i++)
        {
            scanf("%d",&a[i]);
            b[i]=a[i];
        }
        sort(b,b+n);
        int dif=0;
        int cnt=0;
        for(int i=0;i<n;i++)
        {
            dif+=(b[i]-a[i]);
            if(dif==0)
            {
                cnt++;
            }
        }
        printf("%d\n",cnt);
    }
    return 0;
}


1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:93530次
    • 积分:4744
    • 等级:
    • 排名:第6053名
    • 原创:388篇
    • 转载:2篇
    • 译文:0篇
    • 评论:10条
    最新评论