224redfg

cpp 复制代码
#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
#include<queue>
#include<unordered_map>
#define int long long
using namespace std;
signed main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int t;
    cin >> t;
    while (t--)
    {
        //cout << "---------------------------------\n";
        int n;
        cin >> n;
        vector<vector<int>>g(n);
        vector<int>in(n);
        for (int i = 0;i < n-1;i++)
        {
            int u, v, x, y;
            cin >> u >> v >> x >> y;
            v--;u--;
            if (x > y)
            {
                g[v].push_back(u);
                in[u]++;
            }
            else
            {
                g[u].push_back(v);
                in[v]++;
            }
        }
        vector<int>seq;
        queue<int>q;
        for (int i = 0;i < n;i++)
        {
            if (in[i] == 0)
                q.push(i);
        }
        while (!q.empty())
        {
            int u = q.front();
            seq.push_back(u);
            q.pop();
            for (auto v : g[u])
            {
                in[v]--;
                if (in[v] == 0)
                    q.push(v);
            }
        }
        
        vector<int>ans(n);
        for (int i = 0;i < n;i++)
        {
            ans[seq[i]] = i + 1;
        }
        for (auto e : ans)
            cout << e << " ";
        cout << "\n";
    }
    return 0;
}
相关推荐
Zwawa14 小时前
编译器工具链:GCC、Clang、MSVC、ICC、armclang
c语言·嵌入式·编译器
学逆向的14 小时前
C 指针常量与常量指针
c语言·开发语言·网络安全
水饺编程14 小时前
第2章:Linux 基础,exit 命令
linux·c语言·汇编
极客 - L U17 小时前
卡尔曼滤波从零到精通
c语言·数据结构·单片机·嵌入式硬件·mcu
谙弆悕博士19 小时前
用 C 写了个 Windows 聊天室,踩了几个多线程和控制台的坑
c语言·开发语言·c++·windows·网络编程·聊天室
水饺编程19 小时前
第2章:Linux 基础,删除用户
linux·c语言·汇编
小鱼仙官20 小时前
使用Qt封装C/C++ 动态库 用于第三方调用
c语言·c++·qt
FLJwu1 天前
运动相机图像传感器选型实战|第二篇:参数看着一模一样,为什么骑行录像疯狂果冻、拖影翻车?
android·c语言·开发语言·数码相机·运动相机·oem 量产
Escalating_xu1 天前
【C语言项目实战】贪吃蛇(下):移动、碰撞与计分,完成一局可玩的游戏
c语言·开发语言·游戏
C++ 老炮儿的技术栈1 天前
机器人的坐标,像 XYZ 的坐标值,是用单精度浮点还是用双精度浮点?
c语言·c++·人工智能·单片机·c