제출 #1253288

#제출 시각아이디문제언어결과실행 시간메모리
1253288daniel920712World Map (IOI25_worldmap)C++20
30 / 100
175 ms18316 KiB
#include "worldmap.h"
#include <stdio.h>
using namespace std;
vector < int > Next[50];
vector < int > who;
void F(int here,int fa)
{
    who.push_back(here);
    for(auto i:Next[here])
    {
        if(i==fa) continue;
        F(i,here);
        who.push_back(here);
    }
}
vector<vector<int>> create_map(int N, int M, vector<int> A, vector<int> B)
{
    int i,j,K,x,y,a,b;
    who.clear();
    for(i=1;i<=N;i++) Next[i].clear();
    for(i=0;i<M;i++)
    {
        Next[A[i]].push_back(B[i]);
        Next[B[i]].push_back(A[i]);
    }
    if(M==N-1)
    {
        F(1,-1);
        K=who.size();
        vector < vector <int> > ans(K,vector<int>(K,1));
        for(i=0;i<K;i++) for(j=0;j<K;j++) ans[i][j]=who[i];
        return ans;


    }
    else
    {
        K=240;
        vector < vector <int> > ans(K,vector<int>(K,1));
        for(i=0;i<M;i++)
        {
            x=i/60;
            y=i%60;
            a=x*4+1;
            b=y*4+1;
            ans[a][b]=A[i];
            ans[a][b+1]=B[i];
            //printf("%d %d %d %d %d %d\n",x,y,a,b,A[i],B[i]);

        }
        return ans;

    }
    //return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...