• 洛谷试炼场


    最近这段时间感冒外加一些乱七八糟的事情,导致脑子严重僵化……只好刷刷基础(水)题巩固巩固基础(混混题数)。


    目录

    P1003 铺地毯

    P1067 多项式输出

    P1540 机器翻译

    P1056 排座椅

    P1328 生活大爆炸版石头剪刀布

    P1563 玩具谜题


    P1003 铺地毯

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e4+10;
    int n,x,y;
    int a[maxn],b[maxn],g[maxn],k[maxn];
    int main()
    {
        scanf("%d",&n);
        for(int i=1;i<=n;i++) scanf("%d%d%d%d",&a[i],&b[i],&g[i],&k[i]);
        scanf("%d%d",&x,&y);
        int ans=-1;
        for(int i=n;i>=1;i--)
        {
            if(a[i]<=x && b[i]<=y && a[i]+g[i]>=x && b[i]+k[i]>=y)
            {
                ans=i;
                break;
            }
        }
        printf("%d
    ",ans);
    }

    P1067 多项式输出

    #include<bits/stdc++.h>
    using namespace std;
    int n;
    int main()
    {
        while(cin>>n)
        {
            for(int i=n,c;i>=0;i--)
            {
                scanf("%d",&c);
                if(c==0) continue;
                else if(c>0)
                {
                    if(i<n) printf("+");
                    if(c>1) printf("%d",c);
    
                    if(i>1) printf("x^%d",i);
                    else if(i==1) printf("x");
                    else if(c==1) printf("1");
                }
                else
                {
                    printf("-");
                    if(-c>1) printf("%d",-c);
    
                    if(i>1) printf("x^%d",i);
                    else if(i==1) printf("x");
                    else if(-c==1) printf("1");
                }
            }
            printf("
    ");
        }
    }

    P1540 机器翻译

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e3+5;
    int m,n;
    int vis[maxn];
    queue<int> Q;
    inline void Push(int x)
    {
        if(Q.size()>=m)
        {
            vis[Q.front()]=0;
            Q.pop();
        }
        vis[x]=1;
        Q.push(x);
    }
    int main()
    {
        ios::sync_with_stdio(0);
        cin.tie(0), cout.tie(0);
    
        cin>>m>>n;
        int ans=0;
        for(int i=1,x;i<=n;i++)
        {
            cin>>x;
            if(!vis[x]) Push(x), ans++;
        }
        cout<<ans<<endl;
    }

    P1056 排座椅

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=1e3+5;
    int m,n,k,l,d;
    struct Node{
        int idx,cnt;
    }r[maxn],c[maxn];
    bool cmp1(Node a,Node b) {
        return a.cnt>b.cnt;
    }
    bool cmp2(Node a,Node b) {
        return a.idx<b.idx;
    }
    int main()
    {
        scanf("%d%d%d%d%d",&m,&n,&k,&l,&d);
        for(int i=1;i<m;i++) r[i].idx=i, r[i].cnt=0;
        for(int i=1;i<n;i++) c[i].idx=i, c[i].cnt=0;
        for(int i=1,x,y,p,q;i<=d;i++)
        {
            scanf("%d%d%d%d",&x,&y,&p,&q);
            if(x==p) //同行
                c[min(y,q)].cnt++;
            else //同列
                r[min(x,p)].cnt++;
        }
        sort(r+1,r+m,cmp1);
        sort(r+1,r+k+1,cmp2);
        for(int i=1;i<=k;i++) printf("%d%c",r[i].idx,i<k?' ':'
    ');
        sort(c+1,c+n,cmp1);
        sort(c+1,c+l+1,cmp2);
        for(int i=1;i<=l;i++) printf("%d%c",c[i].idx,i<l?' ':'
    ');
    }

    P1328 生活大爆炸版石头剪刀布

    #include<bits/stdc++.h>
    using namespace std;
    typedef pair<int,int> pii;
    const int MAX=205;
    int n,A,B;
    int a[MAX],b[MAX];
    int vs[5][5]={
        {0,0,1,1,0},
        {1,0,0,1,0},
        {0,1,0,0,1},
        {0,0,1,0,1},
        {1,1,0,0,0}
    };
    int main()
    {
        cin>>n>>A>>B;
        for(int i=0;i<A;i++) cin>>a[i];
        for(int i=0;i<B;i++) cin>>b[i];
        pii res=make_pair(0,0);
        for(int i=0;i<n;i++)
        {
            res.first+=vs[a[i%A]][b[i%B]];
            res.second+=vs[b[i%B]][a[i%A]];
        }
        cout<<res.first<<' '<<res.second;
    }

    P1563 玩具谜题

    #include<bits/stdc++.h>
    using namespace std;
    typedef pair<bool,string> P;
    vector<P> v;
    int n,m;
    int main()
    {
        ios::sync_with_stdio(0);
        cin.tie(0), cout.tie(0);
    
        v.clear();
        cin>>n>>m;
        for(int i=1;i<=n;i++)
        {
            bool d; string e;
            cin>>d>>e;
            v.push_back(make_pair(d,e));
        }
        int p=0;
        for(int i=1;i<=m;i++)
        {
            bool d; int s;
            cin>>d>>s;
            if(v[p].first) //朝外
            {
                p+=d?-s:s;
                while(p<0) p+=n;
                p%=n;
            }
            else //朝内
            {
                p+=d?s:-s;
                while(p<0) p+=n;
                p%=n;
            }
        }
        cout<<v[p].second;
    }
  • 相关阅读:
    pscp 从win10远程传输文件到centos7,多个虚拟机之间传文件
    Spring Aop中四个重要概念,切点,切面,连接点,通知
    查看Java的汇编指令
    Spring集成GuavaCache实现本地缓存
    RocketMq消息 demo
    使用axis1.4生成webservice的客户端代码
    oracle ORA-00060死锁查询、表空间扩容
    mysql 1449 : The user specified as a definer ('usertest'@'%') does not exist 解决方法 (grant 授予权限)
    软件安装
    动态雪花飘落
  • 原文地址:https://www.cnblogs.com/dilthey/p/9983272.html
Copyright © 2020-2023  润新知