(HDU - 4786)Fibonacci Tree

022、Conv-BN-SiLU 基础卷积块:构造函数参数计算,前向传播的 PyTorch 逐行实现 本文详细解析了Conv-BN-SiLU卷积块的实现细节与注意事项。作者从调试经历出发,指出bias参数冗余会导致数值不稳定,强调卷积层应设置bias=False。文章对比了SiLU与ReLU的特性差异,逐行分析了构造函数参数计算(包括自动填充、分组卷积等)和前向传播过程,特别讲解了BN层与SiLU激活的数值特性。最后分享了三个实践中的常见问题:BN的momentum设置、SiLU输出范围的影响,以及分组卷积的通道对齐要求,并提供了卷积与BN融合的推理优化技巧。全文聚焦实际工程实现中的关键细节,具有较强实操指 阅读详情

(HDU - 4786)Fibonacci Tree

Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5378 Accepted Submission(s): 1687

Problem Description

  Coach Pang is interested in Fibonacci numbers while Uncle Yang wants him to do some research on Spanning Tree. So Coach Pang decides to solve the following problem:
  Consider a bidirectional graph G with N vertices and M edges. All edges are painted into either white or black. Can we find a Spanning Tree with some positive Fibonacci number of white edges?
(Fibonacci number is defined as 1, 2, 3, 5, 8, … )

Input

  The first line of the input contains an integer T, the number of test cases.
  For each test case, the first line contains two integers N(1 <= N <= 105) and M(0 <= M <= 105).
  Then M lines follow, each contains three integers u, v (1 <= u,v <= N, u<> v) and c (0 <= c <= 1), indicating an edge between u and v with a color c (1 for white and 0 for black).

Output

  For each test case, output a line “Case #x: s”. x is the case number and s is either “Yes” or “No” (without quotes) representing the answer to the problem.

Sample Input

2
4 4
1 2 1
2 3 1
3 4 1
1 4 0
5 6
1 2 1
1 3 1
1 4 1
1 5 1
3 5 1
4 2 1

Sample Output

Case #1: Yes
Case #2: No

题目大意:一个n个点,m条边的无向图,它的边只有白边(1)和黑边(0)两种,问能不能生成一棵树,树的白边数是一个Fibonacci树。

思路:先按黑边优先排序,得到白边数最少几条sum1,然后按白边优先排序,得到白边数最多几天sum2,如果再sum1和sum2之间存在一个Fibonacci数则符合要求(即如果有一个数sum1<=x<=sum2)则白边数为x的生成树一定存在。ps:题目并没有保证一定可以生成树,所以还需要判断能不能生成树,不能也要输出No。

#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std; 

const int maxn=100005;
int fa[maxn],fib[25];

struct node
{
    int u,v,w;
}edge[maxn];

bool cmp1(node a,node b)//黑边优先排序 
{
    return a.w<b.w;
}

bool cmp2(node a,node b)//白边优先排序 
{
    return a.w>b.w; 
} 

int find(int x)
{
    if(x==fa[x]) return x;
    else return fa[x]=find(fa[x]);
}

void getfib()
{
    fib[0]=1,fib[1]=1;
    for(int i=2;i<25;i++) fib[i]=fib[i-1]+fib[i-2];
    //printf("%d\n",fib[24]);
}

int main()
{
    getfib();
    int T,kase=1;
    scanf("%d",&T); 
    while(T--)
    {
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i=0;i<=n;i++) fa[i]=i;
        for(int i=0;i<m;i++) scanf("%d%d%d",&edge[i].u,&edge[i].v,&edge[i].w);
        sort(edge,edge+m,cmp1);
        int cnt=0,sum1=0,sum2=0;//sum1白边最少数量,sum2白边最多数量 
        for(int i=0;i<m;i++)
        {
            int fu=find(edge[i].u),fv=find(edge[i].v);
            if(fu!=fv)
            {
                fa[fu]=fv;
                cnt++;
                sum1+=edge[i].w;
            }
            if(cnt==n-1) break;
        }
        for(int i=0;i<=n;i++) fa[i]=i;
        sort(edge,edge+m,cmp2);
        cnt=0;
        for(int i=0;i<m;i++)
        {
            int fu=find(edge[i].u),fv=find(edge[i].v);
            if(fu!=fv)
            {
                fa[fu]=fv;
                cnt++;
                sum2+=edge[i].w;
            }
            if(cnt==n-1) break;
        }
        if(cnt!=n-1) //不能够成树叶也要输出No 
        {
            printf("Case #%d: No\n",kase++);
            continue;
        }
        bool flag=false;
        for(int i=2;i<25;i++)
            if(fib[i]>=sum1&&fib[i]<=sum2)
            {
                flag=true;
                break;
            }
        if(flag) printf("Case #%d: Yes\n",kase++);
        else printf("Case #%d: No\n",kase++); 
    }
    return 0;
}
Open3D 计算点云的倒角距离(Chamfer Distance)【2025最新版】 ;Chamfer Distance距离可以计算生成点云数据与标签点云数据之间的平均最短点距离。Open3D可以直接用来计算点云的Chamfer Distance距离。博客长期更新,本文最近一次更新时间为:2025年2月18日。 阅读详情

相关推荐

cutlass2.x源码解读之PitchLinearStripminedThreadMap

TensorCoord:使用layout::PitchLinearCoord作为张量坐标。Shape:使用模板参数Shape_作为tile的形状,kThreads:线程总数,定义为模板参数Threads。kElementsPerAccess:每次访问的元素数,定义为模板参数ElementsPerAccess。ThreadAccessShape:线程访问的形状,使用layout::PitchLinearShape定义。内部实现细节:ShapeVec。

jiangjkd的专栏 789

hdu 4786 Fibonacci Tree(并查集)

题目链接:hdu 4786 Fibonacci Tree解题思路首先判断是否可以连通,然后对黑白边分别做并查集连通求连通分量,连通分量即为对应白黑边必须选的边数。代码#include <cstdio> #include <cstring> #include <vector> #include <algorithm>using namespace std; const int maxn = 1e5 +

不慌不忙、不急不躁 523

动态知识图谱构建:从本体论到工程实践

知识图谱作为语义网和人工智能领域的核心技术,旨在通过结构化的方式表示和组织知识。其核心原理在于将实体、概念及其关系建模为图结构,从而支持复杂的语义推理和关联查询。这一技术为机器理解数据间的深层联系提供了基础,在智能推荐、企业知识管理和学术研究等领域具有重要价值。通过结合自然语言处理(NLP)和图数据库技术,系统能够从非结构化数据中自动抽取知识,并构建动态演化的认知网络。本文以“本体论章鱼”项目为例,探讨了如何实现从静态本体到动态知识网络的范式转变,并详细解析了其分布式感知、适应性学习的架构设计,为构建灵活可

weixin_30731305的博客 658

hdu 4786 Fibonacci Tree

题目链接:hdu4786 题意:给你一个图,判断是否存在一个生成树,使得权值之和为一个斐波那契数。 思路:分别跑一次最大生成树和最小生成树。然后判断两个生成树的权值中间是否存在一个斐波那契数。如果存在则输出yes,否则输出no 代码: #include<bits/stdc++.h> using namespace std; const int maxn = 1e5 + 10; st...

江小举的博客 611

Mac版UltraEdit 18.00.0.19破解教程:终端一行命令搞定(附版本适配指南)

本文为Mac用户提供了UltraEdit的合法替代方案与授权指南,强调破解软件的法律风险和安全隐忧。推荐使用VS Code、Sublime Text等开源或商业编辑器,结合终端工具如Vim/Neovim,实现高效文本编辑。同时详细介绍了UltraEdit的官方授权选项,帮助开发者在遵守软件许可的前提下提升工作效率。

k9l0m1的博客 357

基于CANoe的车载以太网测试

以太网测试 CANoe

Yafet 4553

hdu4786Fibonacci Tree

链接:http://acm.hdu.edu.cn/showproblem.php?pid=4786 题意:给定n个点m条边,边分为黑白两种边。问是否存在一棵生成树使得树中的白边数量是一个斐波那契数。 分析:很明显可行的斐波那契数很少才24个,但是怎么判断当前这个数是否能是一棵生成树中的白边数呢?首先肯定是要判断所有边是否能生成树。然后最少要用多少条白边呢?用完所有的黑边还缺多少条边生成树就差多

Fsss 581

从零开始构建高精度称重系统:ADS1232硬件设计与软件调优实战

本文详细介绍了如何基于TI的ADS1232 24位ADC芯片构建高精度称重系统,涵盖硬件设计、软件调优及校准算法。通过优化电源设计、PCB布局和卡尔曼滤波算法,实现毫克级测量精度,适用于工业自动化和实验室等高要求场景。

weixin_28285943的博客 382

HDU 4786 Fibonacci Tree

链接请戳-->HDU 4786 Fibonacci Tree 题意:现有一些黑边和白边,问能否构成一棵树,使得白边的数量 == 一个斐波那契数; 提示: 1.涉及知识:并查集; 2.判断图是否连通,不连通必然无法生成树,此时输出NO; 3.分别计算生成树所需的最多白边数量MAX和最少白边数量MIN,如果介于MIN~MAX存在斐波那契数,则满足题意,输出YES; 4.关于

JS_hyaline''向super coder奋进 536

Xilinx GTY Transceiver时钟方案与功耗优化实践

本文详细解析了Xilinx GTY Transceiver的时钟方案设计与功耗优化实践,涵盖从基础配置到高速24.33024Gbps和中速10.1376Gbps的实战案例。通过Transceivers Wizard的IP设计技巧和动态功耗优化方法,帮助工程师有效降低FPGA系统功耗,提升高速串行通信的稳定性与效率。

weixin_28736355的博客 228

INFFUS 2025 | DDBFusion:基于双重分解和贝塞尔曲线的统一图像分解与融合框架

现有的图像融合算法大多集中于网络架构和损失函数的设计,采用统一的特征提取策略,却忽略了冗余信息和有效信息的划分。然而,对于互补信息而言,统一的特征提取器可能并不适用。因此,本文提出了一种基于贝塞尔曲线图像增强和分层分解的统一图像融合算法,并构建了一个自监督学习任务来学习有意义的信息。其中,贝塞尔曲线旨在模拟不同的图像特征,并构建特殊的自监督学习样本,因此作者的方法不需要特定任务的数据,并且可以在公共自然图像数据集上轻松进行训练。同时,作者的双重分解自监督训练方法可以为模型赋予冗余信息过滤能力。

小白学视觉 308

HDU-4786-Fibonacci Tree

HDU-4786-Fibonacci Tree

Linoy 889

基于STM32、HAL库的ADE7880ACPZ-RL电能计量芯片驱动程序设计

@retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)* @retval 状态 (ADE7880_OK或ADE7880_ERROR)PA6 (MISO) <--> SDO (SPI数据输出)PB0 (CS) <--> /CS (片选,低有效)

corlin6688的博客 668

HDU-4786 Fibonacci Tree(最小生成树[Kruskal])

区域赛都是有思维难度的题吧,果然还是不够熟悉图,完全没有头绪。 看了别人的题解也才知道: 如果一棵生成树最少含有low条白边,最多含有hig条白边,那么含有x(low<=x&&x<=hig)条白边的生成树一定存在 不知道为什么中间的每一个生成树都存在(望大神告知),但我自己画了几个图还没找出反例

idealism_xxm的专栏 1187

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

hdu 4786 Fibonacci Tree(最小生成树)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4786 解题思路: 题目大意: 给你一些白色跟黑色的边,问你在这幅图里面能不能找出一个生成树且里面的白边数量是Fibonacci数列的数 算法思想: 由题意,所以只要找出白边最少的生成树和白边最多的生成树的情况,然后看在这之间有没有Fibonacci数,如果有就输出yes啦,没有就输出

piaocoder 571

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

hdu4786 Fibonacci Tree (最小生成树)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4786 题意:给定图的n个点和m条双向边,告诉你每条边的权值。权值为1表示该边是白边,权值为0表示该边为黑边。 问能否找到一颗生成树,使生成树白边的个数刚好为fibonacci数。如果能构成输出yes,否则输出no。 思路:这里有一个点要知道。因为是0,1 tree。 最小生成...

weixin_30243533的博客 223

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

HDU-4786 Fibonacci Tree

原题链接: https://vjudge.net/problem/HDU-4786 AC代码: #include <algorithm> #include <bits/stdc++.h> #include <cmath> #include <cstdio> #include <cstring> #include <iostream> #include <list> #include <map> #includ

sjyisdog的博客 171

hdu 4786 Fibonacci Tree 思路

Description   Coach Pang is interested in Fibonacci numbers while Uncle Yang wants him to do some research on Spanning Tree. So Coach Pang decides to solve the following problem:    Consider a bid

sulisulisu的博客 356

hdu 4786 A - Fibonacci Tree

Coach Pang is interested in Fibonacci numbers while Uncle Yang wants him to do some research on Spanning Tree. So Coach Pang decides to solve the following problem:   Consider a bidirectional graph G...

c3po 242

hdu 4786 Fibonacci Tree

题目大意: 给你一张无向图,其中有的边为白色有的边为黑色,问你是否有一颗生成树并且它的白色边是斐波那契数列中的一个数 思路: 求出白边最少和最多的生成树之后看是否有一个斐波那契数在这之间就可以 代码 #include #include #include #include #include using namespace std; int T; struct edge{ int u

ying_5的专栏 503

hdu 4786 Fibonacci Tree 生成树

先黑边优先做一次生成树得到白边的最小值min,再以白边优先做一次生成树得到白边的最大值max,只要min到max之间有Fibonacci数则可以,因为从min到max总可以去掉一条黑边换成一条白边。 #include <stdio.h> #include <string.h> #define maxn 110000 struct edge { ...

amily05200的博客 128

HDU - 4786 Fibonacci Tree (Kruskal)

 Coach Pang is interested in Fibonacci numbers while Uncle Yang wants him to do some research on Spanning Tree. So Coach Pang decides to solve the following problem:   Consider a bidirectional graph G...

vocaloid01的博客 217

HDU 4786 Fibonacci Tree 生成树

链接:http://acm.hdu.edu.cn/showproblem.php?pid=4786 题意:有N个节点(1 5),M条边(0 5),其中一部分边被染成了黑色,剩下的边是白色,问能不能建立一棵树,树中有斐波那契数个白色边。 思路:用克鲁斯卡尔建三次树,第一是用所有边建树,判断是否能建成一棵树,第二次用黑边建树,最多可以用到x条黑边(不成环),n-1-x就是最少需要用的白边的数量,第

看曙光 1267
上一篇: (POJ - 2031)Building a Space Station
下一篇: (POJ - 2349)Arctic Network
Hold_My_Own
博客等级 码龄10年 122粉丝 177原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值