109352024-04-20 16:28:14k_balintVasútépítéscpp17Hibás válasz 0/10090ms16136 KiB
#include <bits/stdc++.h>
using namespace std;
const int c=1005;

int n,m,tt;
vector<int> adj[c];
int vis[c];
int cnt,deg;
vector<int> kor;
bool van;
int ans[c][c];
int par[c];

void dfs(int v){
    ++cnt; deg+=adj[v].size();
    vis[v]=1;
    for(int x:adj[v]){
        if(!vis[x]) dfs(x);
    }
}

void dfs2(int v, int p){
    if(van) return;
    vis[v]=2;
    par[v]=p;

    for(int x:adj[v]){
        if(van) break;
        if(x==p) continue;
        if(vis[x]==1) dfs2(x,v);
        else if(!van){
            int k=v;
            while(k != par[x]){
                kor.push_back(k);
                k=par[k];
            }
            van=1;
        }
    }
}

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);

    cin>>n>>m;
    for(int i=1;i<=m;i++){
        int a,b; cin>>a>>b;
        adj[a].push_back(b);
        adj[b].push_back(a);
    }

    // for(int i=1;i<=n;i++){
    //     if(!vis[i]){
    //         deg=0; cnt=0;
    //         dfs(i);
    //         if(deg>2*cnt){
    //             cout << -1 << endl;
    //             return 0;
    //         }
    //         kor.clear();
    //         van=0;
    //         dfs2(i,0);
    //         for(int j=0;j<kor.size();j++){
    //             int x=kor[(j+1)%kor.size()];
    //             int y=kor[j];
    //             ans[x][y]=ans[y][x]=++tt;
    //         }
    //     }
    // }

    for(int i=1;i<=n;i++){
        for(int x:adj[i]){
            if(!ans[x][i]){
                ans[x][i]=ans[i][x]=++tt;
            }
        }
    }

    for(int i=1;i<n;i++){
        for(int j=i+1;j<=n;j++){
            if(!ans[i][j]) ans[i][j]=++tt;
            cout << ans[i][j] << ' ';
        }
        cout << '\n';
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms2224 KiB
2Hibás válasz3ms2400 KiB
3Hibás válasz3ms3156 KiB
subtask20/40
4Hibás válasz46ms10544 KiB
5Hibás válasz46ms10724 KiB
6Hibás válasz46ms10936 KiB
7Hibás válasz46ms11144 KiB
8Hibás válasz46ms11120 KiB
9Hibás válasz46ms11132 KiB
10Hibás válasz46ms11136 KiB
11Elfogadva3ms3172 KiB
subtask30/60
12Hibás válasz46ms10544 KiB
13Hibás válasz46ms10724 KiB
14Hibás válasz46ms10936 KiB
15Hibás válasz46ms11144 KiB
16Hibás válasz46ms11120 KiB
17Hibás válasz46ms11132 KiB
18Hibás válasz46ms11136 KiB
19Elfogadva3ms3172 KiB
20Hibás válasz46ms11152 KiB
21Hibás válasz48ms11096 KiB
22Hibás válasz46ms11364 KiB
23Hibás válasz46ms11440 KiB
24Hibás válasz46ms11336 KiB
25Hibás válasz46ms11464 KiB
26Hibás válasz46ms11560 KiB
27Hibás válasz46ms11580 KiB
28Hibás válasz90ms16136 KiB
29Hibás válasz46ms11580 KiB
30Hibás válasz46ms11592 KiB
31Hibás válasz46ms11584 KiB