1.链表

#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;

const int N = 200;
const int M = 10000;
int n,m,num,ans=-1,p;
struct node {
    int next,to,w;
}e[M<<1];

int top,head[N];
void add(int u,int v,int w) {
    e[top].to=v;
    e[top].w=w;
    e[top].next=head[u];
    head[u]=top++;
}

void dfs(int u) {
    num=0;
    printf("u=%d\n",u);
    for(int i=head[u],v,w; i!=-1; i=e[i].next) {
        num++;
        v=e[i].to,w=e[i].w;
        printf("%d %d\n",v,w);
    }
    printf("num=%d\n",num);
    if(num>ans) ans=num,p=u;
}

int main() {
    memset(head,-1,sizeof(head));
    scanf("%d%d",&n,&m);
    for(int i=0,u,v,w; i<m; i++) {
        scanf("%d%d%d",&u,&v,&w);
        add(u,v,w),add(v,u,w);
    }
    for(int i=1; i<=n; i++) dfs(i);
    printf("%d %d",p,ans);
    return 0;
}
/*
8 10 
5 2 1
1 3 5
4 8 6
2 3 3
5 8 9
3 4 7
2 7 11
7 6 3
6 1 2 
3 6 8
*/
View Code

相关文章:

  • 2021-07-19
  • 2021-09-24
  • 2021-06-19
  • 2021-12-08
  • 2021-04-12
  • 2022-02-21
  • 2022-01-09
猜你喜欢
  • 2021-09-06
  • 2022-02-11
  • 2021-05-12
  • 2021-11-15
  • 2021-05-29
  • 2021-10-28
相关资源
相似解决方案