比赛 EYOI与SBOI开学欢乐赛1st 评测结果 AAWWWAWWEA
题目名称 设备分解炉 最终得分 40
用户昵称 Lesater 运行时间 0.223 s
代码语言 C++ 内存使用 0.58 MiB
提交时间 2022-08-29 20:08:14
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
#define P pair<int,int>
int L,n,a[101],cnt;
P s[10001];
int main()
{
    freopen("device.in","r",stdin);
    freopen("device.out","w",stdout);
    cin>>n>>L;
    for(int i=1;i<=n;++i)
    cin>>a[i];
    sort(a+1,a+1+n);
    for(int i=1;i<=n;++i)
    {
        s[a[i]].first=i;
        s[a[i]].second=1;
    }
    int k=0;
    for(int i=0;i<=L;++i)
    {
        if(s[i].first==0) s[i].first=k;
        else k=s[i].first;
    }
    for(int i=1;i<L;++i)
    {
        if(s[i-1].first<= n/2)    
        {
            for(int j=0;j<i;++j)
            {
                if(s[j].second!=s[2*i-j].second)
                break;
                if(j==i-1) 
                cnt++;
            }
        }
        if(s[i].first> n>>1)    
        {
            for(int j=L;j>i;--j)
            {
                if(s[j].second!=s[2*i-j].second)
                break;
                if(j==i+1) 
                cnt++;
            }
        }
    }
    cout<<cnt;
    return 0;
}