• 寒假Day57:CodeForces1325C Ehab and Pathetic MEXs树统计度思维


     CodeForces - 1325C 

    题意:

    给出n-1行结点和结点的连接,

    要求给每一条边编号(0~n-2)求任意两个结点的路径中没有出现的最小数字

    思路:把所有点的入度统计一下,再统计一下叶子结点个数,最后叶子结点从0开始编号,其他节点从叶子结点个数开始编号即可,因为是从0开始

    注意:输出不一定要和样例的输出一样

    类似如入度的问题

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    
    const int N=1e5+20;
    int a[N],b[N],c[N];
    
    int main()
    {
        int n;
        cin>>n;
        for(int i=1; i<n; i++)
        {
            cin>>a[i]>>b[i];
            c[a[i]]++,c[b[i]]++;
        }
        int w=0;
        for(int i=1; i<n; i++) //计算叶子节点个数
        {
            if(c[a[i]]==1||c[b[i]]==1)
                w++;
        }
        int x=0;
        for(int i=1; i<n; i++)
        {
            if(c[a[i]]==1||c[b[i]]==1)
                cout<<x++<<endl;
            else
                cout<<w++<<endl;
        }
        return 0;
    }
  • 相关阅读:
    初识软件工程
    00.JS前言
    01.JS语法规范、变量与常量
    02.JS数据类型与数据类型转换
    03.JS运算符
    04.JS逻辑结构
    05.JS函数
    06.JS对象-1
    08.JS单词整理
    00.ES6简介
  • 原文地址:https://www.cnblogs.com/OFSHK/p/12541669.html
Copyright © 2020-2023  润新知