• hdoj5821【贪心-神题】


    啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊,比赛的时候直接读错题了,实力带坑队友。。。。
    题意:
    有两个序列都代表筐,每个筐里只有一个球,然后序列的值代表筐里的球的颜色,问你在m次操作后,a序列的球能否变成b序列的球,每总操作虽然是收集这个区间所有的球,但是每个筐只能放一个,也就是说这只是交换位置的操作。
    思路:
    补完题,也完全想不出可以用标记下标,然后对m个区间的a数组下标排序,因为在排序的过程中,就会类似于偏移操作,而且是最优操作哦,然后判断一下就好了。哎,实在想不出来,好厉害的方法,+神题;
    挫code……

    #include<cstdio>
    #include<iostream>
    #include<math.h>
    #include<string.h>
    #include<algorithm>
    using namespace std;
    #define eps 1e-8
    typedef __int64 LL;
    
    const int N=1e3+10;
    
    struct asd{
        int id;
        int v;
    }q[N];
    int temp[N];
    
    bool cmp(asd x,asd y)
    {
        return x.id<y.id;
    }
    
    int main()
    {
        int t;
        int n,m;
        scanf("%d",&t);
        while(t--)
        {
            scanf("%d%d",&n,&m);
            for(int i=0;i<n;i++)
            {
                scanf("%d",&q[i].v);
                q[i].id=-1;
            }
            for(int i=0;i<n;i++)
            {
                scanf("%d",&temp[i]);
                for(int j=0;j<n;j++)
                {
                    if(q[j].v==temp[i]&&q[j].id==-1)
                    {
                        q[j].id=i;
                        break;
                    }
                }
            }
            int s,t;
            while(m--)
            {
                scanf("%d%d",&s,&t);
                sort(q+s-1,q+t,cmp);
            }
            bool flag=true;
            for(int i=0;i<n;i++)
            {
                if(q[i].v!=temp[i])
                {
                    flag=false;
                    break;
                }
            }
            if(flag) puts("Yes");
            else puts("No");
        }
        return 0;
    }
    /*
    
    100
    4 1
    1 1 0 0
    0 0 0 2
    1 4
    4 2
    1 1 0 0
    0 0 0 2
    1 4
    2 4
    */
    
  • 相关阅读:
    501. Find Mode in Binary Search Tree
    [leetcode]Evaluate Reverse Polish Notation
    [leetcode]LRU Cache
    [mock]12月27日
    [mock]12月28日
    [leetcode]Max Points on a Line
    *[topcoder]JumpFurther
    [mock]12月11日
    *[topcoder]GUMIAndSongsDiv1
    [leetcode]Reorder List
  • 原文地址:https://www.cnblogs.com/keyboarder-zsq/p/5934892.html
Copyright © 2020-2023  润新知