蓝桥杯--动态数组

C语言代码

#include<stdio.h>
#include<vector>
using namespace std;
int main(){
    int n,m,x,y;
    vector <int> v[10001];
    scanf("%d %d",&n,&m);
    for(int i=0;i<m;i++){
        scanf("%d %d",&x,&y);
        v[x].push_back(y);
    }
    for(int i=1;i<=n;i++){
        if(v[i].size()!=0){
            for(int j=0;j<v[i].size();j++){
              if(j<v[i].size()-1){
                  printf("%d ",v[i][j]);
              }else{
                  printf("%d",v[i][j]);
              }
            }
        }
        if(i<n){
            printf("
");
        }
        
    }
    return 0;
}

C语言代码

#include<stdio.h>
#include<vector>
using namespace std;
int main(){
    int n,m;
    int a,b;
    vector<int> v[10001];
    scanf("%d %d",&n,&m);
    for(int j=1;j<=n;j++){
        v[j].push_back(j);
    }
    for(int i=0;i<m;i++){
        scanf("%d %d",&a,&b);
        if(a!=b){
            for(int k=0;k<v[b].size();k++){
                v[a].push_back(v[b][k]);
            }
            int d=v[b].size();
            for(int p=0;p<d;p++){
                    v[b].pop_back();
            }
           vector<int> s;
           v[b].swap(s);
            //printf("%d %d
",b,v[b].size());
        }else{  
            continue;
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=0;j<v[i].size();j++){
            printf("%d",v[i][j]);
            if(j<v[i].size()-1){
                printf(" ");
            }
        }
        if(i!=n){
            printf("
"); 
        }
        
    }
     
    return 0;
}
原文地址:https://www.cnblogs.com/pythonbigdata/p/8563883.html