hdu5573 Binary Tree 二进制

图神经网络与大模型融合的理论综述:架构、机制与未来方向 然而,它们普遍缺乏对图结构数据的原生支持,无法直接处理边、节点之间的拓扑关系,这限制了其在关系密集型任务中的表现 [23]。2020年发布的BERT [16] 开启了自监督预训练时代,而2021年后,T5 [17]、PaLM [18]、LLaMA [19] 等模型相继推出,参数规模突破千亿级,展现出惊人的上下文学习(In-context Learning)与链式推理(Chain-of-Thought)能力 [20]。例如,将医学影像作为图节点,结合病理报告文本,实现更精准的疾病诊断 [58]。 阅读详情

Binary Tree

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 952    Accepted Submission(s): 558
Special Judge


Problem Description
The Old Frog King lives on the root of an infinite tree. According to the law, each node should connect to exactly two nodes on the next level, forming a full binary tree.

Since the king is professional in math, he sets a number to each node. Specifically, the root of the tree, where the King lives, is  1 . Say  froot=1 .

And for each node  u , labels as  fu , the left child is  fu×2  and right child is  fu×2+1 . The king looks at his tree kingdom, and feels satisfied.

Time flies, and the frog king gets sick. According to the old dark magic, there is a way for the king to live for another  N  years, only if he could collect exactly  N soul gems.

Initially the king has zero soul gems, and he is now at the root. He will walk down, choosing left or right child to continue. Each time at node  x , the number at the node is  fx  (remember  froot=1 ), he can choose to increase his number of soul gem by  fx , or decrease it by  fx .

He will walk from the root, visit exactly  K  nodes (including the root), and do the increasement or decreasement as told. If at last the number is  N , then he will succeed.

Noting as the soul gem is some kind of magic, the number of soul gems the king has could be negative.

Given  N ,  K , help the King find a way to collect exactly  N  soul gems by visiting exactly  K  nodes.
 

Input
First line contains an integer  T , which indicates the number of test cases.

Every test case contains two integers  N  and  K , which indicates soul gems the frog king want to collect and number of nodes he can visit.

⋅   1≤T≤100 .

⋅   1≤N≤109 .

⋅   N≤2K≤260 .
 

Output
For every test case, you should output " Case #x:" first, where  x  indicates the case number and counts from  1 .

Then  K  lines follows, each line is formated as 'a b', where  a  is node label of the node the frog visited, and  b  is either '+' or '-' which means he increases / decreases his number by  a .

It's guaranteed that there are at least one solution and if there are more than one solutions, you can output any of them.

 

Sample Input
  
2 5 3 10 4
 

Sample Output
  
Case #1: 1 + 3 - 7 + Case #2: 1 + 3 + 6 - 12 +


思路参考:http://blog.youkuaiyun.com/u013068502/article/details/50094561


有两个地方想了一会才想明白,一个是d为什么要除以2,因为a + b + c要变成a - b - c那么也就是

a + b + c - 2(b + c),所以要变号的话肯定是(a + b + c - (a - b - c)) / 2 = b + c,然后再把b和c提取出来变号就可以了


还有一个地方是最后加减1的问题,为什么d必须是偶数,因为最小变换是1变号到-1,1 - (-1) = 2,也就是说最小

变换相差还是偶数呢,如果d = 100111(二进制),你尾巴上的那个1怎么办a - (-a) = 1,2a = 1,a = 1/2,肯定不行的

所以d必须得是偶数,例如d = 10(二进制),a - (-a) = 2a = 2,a = 1,只需要把1变号成-1就可以了,是可以满足的


#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <map>

using namespace std;

typedef long long ll;

int T, n, k, kase;
ll sum, d, x, t;
bool flag;
map<ll, int> mp;

int main()
{
	cin >> T;
	kase = 0;
	while (T--) {
		scanf("%d%d", &n, &k);
		sum = 0;
		for (int i = 0; i < k; i++) {
			sum = sum + ((ll)1 << i);
		}
		flag = false;
		d = sum - n;
		d = (d % 2 ? flag = true, d + 1 : d);
		x = d >> 1;
		mp.clear();
		for (int i = 0; i < 61; i++) {
			t = ((ll)1 << i) & x;
			if (t) {
				mp[t] = 1;
			}
		}
		printf("Case #%d:\n", ++kase);
		for (int i = 0; i < k; i++) {
			t = ((ll)1 << i);
			if (flag && i == k - 1) {
				t++;
			}
			printf("%lld ", t);
			if (mp[t] == 1) {
				printf("-");
			}
			else {
				printf("+");
			}
			puts("");
		}
	}
	return 0;
}


企业AI Agent的多模态学习在用户体验优化中的应用 本文旨在为企业技术团队提供关于多模态AI Agent在用户体验优化领域的全面技术指南。多模态学习如何突破传统单模态AI的局限性企业级AI Agent的系统架构设计原则多模态特征融合的工程实现细节用户体验度量的量化方法实际部署中的性能优化策略研究范围涵盖计算机视觉、自然语言处理、语音识别等多个AI子领域的技术融合,以及它们在电商、金融、医疗等行业的应用实践。首先介绍多模态学习的核心概念和技术原理然后深入分析关键算法和数学模型接着通过完整项目案例展示实际应用。 阅读详情

相关推荐

量化交易新手必看:如何用vnpy+Tushare轻松获取A股历史数据(附完整代码)

本文为量化交易新手提供了使用vnpy和Tushare构建A股历史数据获取系统的完整指南。通过详细的代码示例,手把手教你搭建环境、封装数据获取引擎,并实现日线等数据的格式转换与本地存储,为策略回测与分析奠定坚实的数据基础。

weixin_29098117的博客 377

HDU - 5573

Binary Tree The Old Frog King lives on the root of an infinite tree. According to the law, each node should connect to exactly two nodes on the next level, forming a full binary tree. Since the king i...

ZzzzGgggHhhh的博客 239

aubo i5 + realsense D435i识别抓取实践二

aubo i5 + realsense D435i识别抓取实践二前言一、手眼标定是什么?二、标定软件安装1.aruco_ros安装2.vision_visp安装3.easy_handeye安装4.realsense驱动安装5.安装realsense ROS软件包三、配置1.launch文件修改2.打印二维码四、手眼标定1.启动launch文件2.标定步骤3.发布tf关系 前言 前面配置好了aubo机械臂的ROS软件包,机械臂可以正常运行后,接下来我们进行机械臂与相机的手眼标定。手眼标定分为eye_on_ha

转角 6373

HDU - 5573 Binary Tree 构造

题意:给出一颗二叉树,根节点为1,子节点为父节点的2倍和2倍+1,从根节点开始依次向下走k层,问如何走能使得将路径上的数进行加减最终结果得到n。 思路:来自:点击打开链接 做题一定要注意数据范围!  n 是真的没想到利用差值去搞事情。。 代码: #include #define ll long long using namespace std; int main() { int

WA是一笔财富 287

基于STM32的智能火灾报警系统设计:多传感器融合与远程控制实现

本文详细介绍基于STM32单片机的智能火灾报警系统设计,采用多传感器融合技术(烟雾、温度、火焰检测)实现高精度火灾识别。系统集成远程控制与手机APP监控,通过加权决策算法降低误报率,提供多级响应策略,确保火灾预警的准确性与可靠性。

u5v6w7的博客 1101

搜索引擎——ElasticSearch汇总

汇总——ElasticSearch篇 全文检索 问题1:什么是全文检索? 基本概念:对**非结构化数据/结构化数据**先建立**索引**,再对索引进行搜索**文档**的过程叫做全文检索。 什么是非结构化与结构化数据? - 非结构化数据:没有固定的格式的数据(html,word,excel)---没有固定长度,字段约束,描述,散列数据 - 结构化数据:有固定的格式的数据(如:数据库数据)---有固定长度(varchar(50)),字段类型,描述修饰数据 搜索算法:顺序扫描法、倒排索引法 - 顺序

alonewolf_99的博客 1838

Binary Tree

The Old Frog King lives on the root of an infinite tree. According to the law, each node should connect to exactly two nodes on the next level, forming a full binary tree. Since the king is profession...

weixin_44824383的博客 218

YOLOv11模型改进-模块-引入特征细化模块FRFN 解决小目标、遮挡等问题

FRFN 是一种专门设计的深度学习结构,旨在提高图像处理任务中的特征表示能力。它的核心设计理念是通过逐层细化和优化特征图,从而实现更高的分类和检测精度。1. 特征提取层:通过卷积层提取初始特征,并进行批量归一化以增强稳定性。2. 特征细化模块:在每个模块中,当前层特征图与前一层特征图进行融合,以强化特征表示。3. 跳跃连接:通过跳跃连接保留多尺度信息,帮助缓解深层网络中的信息丢失。4. 非线性激活:使用激活函数(如ReLU)增加模型的非线性能力。5. 输出层。

qq_64693987的博客 3335

HDU 5573 Binary Tree(找规律)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5573 题意:给你一个完全二叉树,节点为自然数的排列(第一行1,第二行2 3,第三行4 5 6 7。。。)。现在,给你一个N和K,K表示给你这个完全二叉树的前K行,从第1行到第K行有很多路径,希望找到一条路径能表示N,路径上的节点可取正也可取负,要求最后的和为N。 思路:由题目给的数据范围可知前两个...

weixin_33882443的博客 94

L3自动驾驶时代,域控制器核心解析(第一篇:架构演进与五域基础)

本文作为L3域控制器系列的第一篇,核心梳理了3个关键内容:L3时代为什么必须用域控制器:解决分布式ECU的协同、算力、迭代难题;域控制器的演进路线:从分布式ECU→域集中式→中央计算平台;博世五域架构的核心解析:五大域的定位、功能与典型方案。后续将持续更新系列文章,重点覆盖:第二篇:L3对域控制器的关键技术要求(传感器、算力、线控、软件、通信);第三篇:域控制器全产业链拆解(上游芯片、中游器件、下游总成);第四篇:域控制器的产业机遇与国产替代进展。

getusushu的博客 526

基于 ESP32 与 TDS 传感器的水培营养液离子浓度自动配比系统设计与实现

本系统以 ESP32 为主控芯片,结合 TDS(总溶解固体)传感器实时监测水培营养液中的离子浓度,通过蠕动泵自动补充浓缩营养液或清水,实现营养液 EC 值的闭环自动配比。系统适用于家庭及小型农场的水培种植场景,可稳定维持营养液浓度在作物生长所需的最佳区间。

weixin_42300449的博客 76

hdu 5573 (构造题)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5573 题意: 很好懂 思路: 我们先考虑最左边的一条链,因为对于给一个n 如果n == 1+2+4+。。。+1 那么就可以在最后一步向右拐一下就可以。现在我们考虑一般的情况,我们把k层的最左边数字加起来等于sum  如果n&gt;sum  肯定是不会存在的。 (除掉上边的情况) ,那么我就要从s...

yjt9299的博客 323

企业合规审查系统开发实战:基于知识图谱与深度学习的智能引擎构建(附完整Python代码)

动态合规监测:实时追踪法规变化并更新知识库智能合约审计:区块链智能合约的自动合规检查跨域知识融合:整合财务、法律、业务多维度数据可解释性增强:基于Attention机制生成合规审查依据。

理论都是虚的,代码才是王道。 455

HDU 5573 Binary Tree 【二进制+思维】

传送门:HDU 5573 Binary Tree Problem Description The Old Frog King lives on the root of an infinite tree. According to the law, each node should connect to exactly two nodes on the next level, forming...

Waiting For You 222

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

HDU 5573 Binary Tree (二进制,位运算)

原题地址: 传送门 http://acm.hdu.edu.cn/showproblem.php?pid=5573 Binary Tree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 499    Accepted Sub

Lulu11235813的博客 806

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

[二进制] Binary Tree HDU5573

Binary Tree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1743    Accepted Submission(s): 1043Special Judge   Problem Description The Old ...

博客 240

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

HDU 5573 Binary Tree 找规律二进制

Binary Tree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 562    Accepted Submission(s): 321 Special Judge Problem Description The

ctrss的博客 546

HDU5573 Binary Tree 二进制+规律

http://acm.hdu.edu.cn/showproblem.php?pid=5573 The Old Frog King lives on the root of an infinite tree. According to the law, each node should connect to exactly two nodes on the next level, forming ...

lanshan1111的博客 221

HDU 5573-Binary Tree【思维+二进制】

题意:给你一个满二叉树,对于每个结点u,左儿子结点时2u,右儿子是2u+1,给你一个n和k,问你选一条k个节点的路径,每个点你可以选择加上或者减去这个结点的编号值,要求最终答案是n。 思路:我们考虑选择最左边的那条链,对于n是任意偶数而言,不难发现都可以构成。而对于n是奇数而言,我们在选择第k个时选择右儿子,最末尾的1就可以消掉转换成了偶数的情况。 #include<bits/stdc...

独钓门前月 383

HDU-5573 Binary Tree(构造/二进制)

Binary Tree Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/65536K (Java/Other) Total Submission(s) : 3   Accepted Submission(s) : 3 Special Judge Problem Description The O

十分残念的博客 454

hdu 5573---Binary Tree(二进制构造)

Binary Tree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 2019    Accepted Submission(s): 1207Special Judge   Problem Description The Old ...

pxlsdz的博客 419

hdu 5573Binary Tree(二进制)

Binary TreeTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1034 Accepted Submission(s): 609 Special JudgeProblem Description The Old Frog Kin

_ostreamBaba 407

(HDU 5573) 2015 上海 icpc B. Binary Tree(二进制找规律)

HDU5573 Binary Tree 题目 有一颗满二叉树,编号1 ~ n,现在你要从根节点往下走,初始手里的值 V 为 0,每路过一个节点,可以选择 V 加上或者减去节点的编号值。问你走 k 层,值 V 能否达到 n。(题目保证可以达到) 最后输出路径,怎么走的。 1 <= N <= 1e9 N <= 2k2^k2k <= 2602^{60}260; 分析 可以想到,...

Stormjing的博客 301

Binary Tree HDU - 5573(二进制)

讲解:https://blog.youkuaiyun.com/nbl97/article/details/78305345 #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> using namespace std; #define ll long long int N,K; int main() { int t,h=1; scanf("%d",&t); whil

weixin_45113721的博客 149

HDU - 5573 Binary Tree(思维+构造+二进制)

题目链接:点击查看 题目大意:给出一棵无限大的完全二叉树,每次给出一个 n 和一个 k ,要求从点 1 出发一直向下,找到一条长度为 k 的路径,对于路径上的点可以加上其编号,也可以减去其编号,需要构造出一种方案,使得计算的结果为 n 题目分析:因为 k 最大只有 60 ,给足了提示是需要往二进制上思考,但奈何对二进制的题目不太敏感,之前打 cf 时碰到的二进制题目也是因为不会做无奈只能掉分。。菜啊 回到这个题目,稍微画几层这个完全二叉树,不难发现最左边的一条链上恰好是二进制数,也就是 1 , 2 ,

Falcon的博客 430

HDU 5573 Binary Tree 构造(二进制)

题意:结点无限个的满二叉树,从左到右按顺序编号a[u](能量).在结点u可以选择吸收/释放能量a[u]. n n 构造:令all=2^k-1,dif=all-n dif本来是不选的bit位,则只要令不选为dif/2的,因为其变为负数. 最终结果为(all-dif/2)-dif/2=n 可以构造 (当dif为奇数 最后一步走右儿子,让all=2^k即可) #include usi

noone0的博客 365
上一篇: hdu4493 Tutor 小数进位
下一篇: hdu5929 Basic Data Structure 规律+模拟
Daemoonn
博客等级 码龄11年 42粉丝 198原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值