码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces_729_E

时间:2016-11-26 20:05:51      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:bsp   amp   cst   blog   main   include   space   存在   cstring   

http://codeforces.com/problemset/problem/729/E

 

存在的数必须连续,若不连续,从最后选人来补,注意根不是0和其他点是0的情况。

 

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;

int n,s,num[200005] = {0};

int main()
{
    int ans = 0,t = 0;
    scanf("%d%d",&n,&s);
    for(int i = 1;i <= n;i++)
    {
        int x;
        scanf("%d",&x);
        if(i == s && x != 0)    ans++;
        else if(i != s && x == 0)
        {
            t++;
            ans++;
        }
        else    num[x]++;
    }
    int sum = 1;
    for(int i = 1;i < n;i++)
    {
        if(sum >= n)    break;
        if(!num[i])
        {
            if(t)   t--;
            else    ans++;
            sum++;
        }
        else    sum += num[i];
    }
    printf("%d\n",ans);
    return 0;
}

 

Codeforces_729_E

标签:bsp   amp   cst   blog   main   include   space   存在   cstring   

原文地址:http://www.cnblogs.com/zhurb/p/6104865.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!