zoukankan      html  css  js  c++  java
  • Codeforces Round #546 (Div. 2)D(贪心,思维,SET,VECTOR,模拟)

    #include<bits/stdc++.h>
    using namespace std;
    int a[300007],b[500007],c[500007];
    set<int>st[300007];
    vector<int>v;
    int main(){
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++){
            scanf("%d",&a[i]);
            v.push_back(a[i]);
        }
        int cnt=0;
        for(int i=1;i<=m;i++){
            scanf("%d%d",&b[i],&c[i]);
            st[b[i]].insert(c[i]);
        }
        v.pop_back();
        int ans=0;
        for(int i=(int)v.size()-1;i>=0;i--){//从后向前是为了保证只要i>=0就可以循环下去,不会使循环跑不完就停止
            int tmp=v[i];
            for(int j=i+1;j<v.size();j++){//从前向后换,可以让a[n]先和原先靠前的换后再和原先靠后的换,从而换的更远
                if(st[tmp].count(v[j])){
                    swap(v[j],v[j-1]);
                }
                else
                    break;
            }
            if(st[v.back()].count(a[n]))//队尾可以换到a[n]后面的话,彻底删除他
                v.pop_back();
        }
        ans=n-v.size()-1;
        printf("%d",ans);
        return 0;
    }

    保持热爱 不懈努力 不试试看怎么知道会失败呢(划掉) 世上无难事 只要肯放弃(划掉)
  • 相关阅读:
    AG-Admin微服务框架入门
    使用node-webkit包装浏览器
    转 使用Docker部署 spring-boot maven应用
    转 docker的下载与安装
    Maven基本理解
    物联网垂直态势分析
    纯技术商业价值
    OpenLayers 3 入门教程
    转 从红帽、GitHub和Docker看开源商业模式的进阶
    关于 Total Commander 的标签(Tab)功能【转】
  • 原文地址:https://www.cnblogs.com/ldudxy/p/10516761.html
Copyright © 2011-2022 走看看