关于sort(悬关)
  • 板块学术版
  • 楼主WZWZWZWY
  • 当前回复7
  • 已保存回复7
  • 发布时间2023/6/5 10:55
  • 上次更新2023/10/23 13:55:38
查看原帖
关于sort(悬关)
704668
WZWZWZWY楼主2023/6/5 10:55

不小心把帖删了 QAQ

以下是部分代码

#include <iostream>
#include <algorithm>
using namespace std;           
int N,k;
struct Tree{
    int ans,V,F,id;
}tree[100005];
bool cmp(Tree a, Tree b){
    return a.V > b.V;
}
bool cmp2(Tree a, Tree b){
    return a.id < b.id;
}
int main()
{
    scanf("%d",&N);
    tree[1].F = 1;
    for (int i = 1; i <= N; i++) tree[i].id = i;
    for (int i = 1; i <= N; i++) scanf("%d",&tree[i].V);
    for (int i = 2; i <= N; i++) scanf("%d",&tree[i].F);
    sort(tree+1,tree+1+N,cmp);
    for (int i = 1; i <= N; i++) printf("%d %d\n",tree[i].id,tree[tree[i].F].id);

    return 0;
}

一组数据:

5
6
2
9
14
7
1
1
3
4

不注释sort的话,为什么每个点的父结点变了啊QAQ(请回答的语气温柔点)

输出的是某个点和该点的父结点

2023/6/5 10:55
加载中...