• 徐州网络赛补题


    A

    B题

    set暴力水过

    #pragma GCC optimize("O3")
    #include<bits/stdc++.h>
    #define ll long long
    using namespace std;
    set<int>s;
    set<int>::iterator it;
    inline int read(){
       int s=0,w=1;
       char ch=getchar();
       while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
       while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
       return s*w;
    }
    int main()
    {
        int n,m,q,z;
        n=read(),m=read();
        for(int i=1;i<=m;i++)
        {
            q=read(),z=read();
            if(q==1)
                s.insert(z);
            else
            {
                 it=s.lower_bound(z);
                if(it==s.end()||*it!=z)
                    printf("%d
    ",z);
                else
                {
                    int ans=*it;
                    it++;
                    while(it!=s.end()&&(*it)-1==ans)
                    {
                        ans=*it;
                        it++;
                    }
                    if(it==s.end()&&ans==n)
                    {
                        puts("-1");
                    }
                    else
                        printf("%d
    ",ans+1);
                    
                }
            }    
        }
        return 0;
    }

    C

    签到题

    #include<bits/stdc++.h>
    using namespace std;
    #define ll long long
    
    int main()
    {
        int n;
        scanf("%d",&n);
        if(n%2==0&&(n/2!=1))
            puts("YES");
        else
            puts("NO");
       return 0;
    }

    D题

    kmp模板题

    #include<iostream>
    #include<cstring>
    using namespace std;
    
    typedef struct
    {
        char data[100010];
        int len;
    }    sqstring;
    
    void getnextval(sqstring t,int nextval[])
    {
        int j=0,k=-1;
        nextval[0] = -1;
        while (j<t.len)
        {
            if (k==-1 || t.data[j]==t.data[k])
            {
                j++;
                k++;
                if (t.data[j]!=t.data[k])
                    nextval[j]=k;
                else
                    nextval[j]=nextval[k];
            }
            else
                k=nextval[k];
        }
    }
    
    int KMPIndexl(sqstring s,sqstring t)
    {
        int nextval[100010],i=0,j=0;
        getnextval(t,nextval);
        while (i<s.len && j<t.len)
        {
            if (j==-1 || s.data[i]==t.data[j])
            {
                i++;
                j++;
            }
            else
                j=nextval[j];
        }
        if (j>=t.len)
            return(i-t.len);
        else
            return (-1);
    }
    
    int main()
    {
        sqstring n,m;
        int p=0;
        scanf("%s",n.data);
        n.len=strlen(n.data);
        scanf("%d",&p);
        for (int i=0;i<p;i++)
        {
            getchar();
            scanf("%s",m.data);
            m.len=strlen(m.data);
            if (n.len>m.len)
            {
                if (KMPIndexl(n,m)!=-1)
                    printf("my child!
    ");
                else
                    printf("oh, child!
    ");
            }
            else if (n.len<m.len)
            {
                if (KMPIndexl(m,n)!=-1)
                    printf("my teacher!
    ");
                else
                    printf("senior!
    ");
            }
            else if (n.len==m.len)
            {
                if (strcmp(n.data,m.data)==0)
                    printf("jntm!
    ");
                else
                    printf("friend!
    ");
            }
            
        }
        
    }

    E

  • 相关阅读:
    使用pymouse模块时候报错No module named 'windows'
    解决PIL透明的图片放在新图片上报错
    解决PIL切圆形图片存在锯齿
    常见金融术语-帮助更好的理解金融业务需求
    FastJson序列化时过滤字段(属性)的方法总结
    数据库事务4种隔离级别及7种传播行为
    硬件网络接口规范
    「题解」P5906 【模板】回滚莫队&不删除莫队
    「学习笔记」优美的暴力——莫队
    2017 NOIp提高组 DAY2 试做
  • 原文地址:https://www.cnblogs.com/hh13579/p/11494169.html
Copyright © 2020-2023  润新知