一、链表树

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++ 262144K,其他语言 524288K
64bit IO Format: %lld

题目描述

在牛牛所在的世界,链表是一种二叉树。
这是牛牛第一次见到链表树,他感到十分好奇,他提出了若干个问题,每次询问点x到根的路径上所有点分别是什么,你需要按照深度从小到大给出。

本题为核心代码模式,代码框中预设代码已经指定好类名、方法名、参数名,请勿修改或重新命名,直接返回值即可。

输入

{1, 2, 3, 4, 5, 6, 7}, [1, 2, 3, 4, 5, 6, 7]

输出

[{1}, {1, 2}, {1, 3}, {1, 2, 4}, {1, 2, 5}, {1, 3, 6}, {1, 3, 7}]

说明

点1到根的路径上的个分别为{1}
点2到根的路径上的个分别为{1, 2}
点3到根的路径上的个分别为{1, 3}
点4到根的路径上的个分别为{1, 2, 4}
点5到根的路径上的个分别为{1, 2, 5}
点6到根的路径上的个分别为{1, 3, 6}
点7到根的路径上的个分别为{1, 3, 7}

备注

设 nnn 为树的点数,保证树的编号为 111~nnn 的整数且互不相同
设 mmm 为问题个数
2<=n<=1032 <= n <= 10^32<=n<=103
0<=m<=1030 <= m <= 10^30<=m<=103

代码框预设代码

/** class ListNode {*     int val;*     ListNode next = null;**     public ListNode(int val) {*         this.val = val;*     }* }* /
/* class TreeNode {*     int val = 0;*     TreeNode left = null;*     TreeNode right = null;**     public TreeNode(int val) {*         this.val = val;*     }* }
*/class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可* 你需要返回m个指针,第i个指针指向一条链,表示第i个问题的答案** @param root TreeNode类 指向链表树的根* @param b    int整型一维数组 表示每个问题是什么* @return ListNode类一维数组*/public ListNode[] solve(TreeNode root, int[] b) {// write code here}
}

二、数字变换

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++ 262144K,其他语言 524288K
64bit IO Format: %lld

题目描述

现在有一个数字 nnn ,你可以通过下面三种变换,使得这个数字变成 000 ,现在想知道最少需要变换几次
第一种变换:n=n−1n = n - 1n=n−1
第二种变换:若 nnn 是偶数,则 n=n/2n = n / 2n=n/2
第三种变换:若 nnn 是333的倍数,n=n/3n = n / 3n=n/3.

本题为ACM模式,请通过代码实现题目,过程中的输入输出请自行处理,处理方式参考题目输入输出描述或左侧例题。

输入描述

输入第一行一个整数 TTT ,代表有 TTT 组测试数据
接下来 TTT 行,每一行为一个整数 nnn ,代表要变换的数。
1<=T<=100,1<=n<=2∗1091 <= T <= 100,1 <= n <= 2*10^91<=T<=100,1<=n<=2∗109

输出描述

对于每组测试数据,输出一个答案代表最少需要变换的次数。

输入

1
10

输出

4

说明

先执行第一种变换变成 999 ,执行第三种变换变成 333,执行第三种变换变成 111,最后执行第一种变换变成 000

三、小K的第K小元素

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++ 262144K,其他语言 524288K
64bit IO Format: %lld

题目描述

小 KKK 有 nnn 个数组,并且他将数组标号为 111~nnn ,每个数组有若干个元素,现在他有 qqq 次询问,每次询问细节如下:

  • 首先给出一个整数 PPP ,之后跟着 PPP 个互不相同的数组下标,最后给出一个整数 kkk 。
  • 你需要告诉小 KKK ,将这 PPP 个数合并起来后的第 kkk 小元素是多少。

本题为ACM模式,请通过代码实现题目,过程中的输入输出请自行处理,处理方式参考题目输入输出描述或左侧例题。

输入描述

第一行包含一个正整数 nnn (1<=n<=105)(1<=n<=10^5)(1<=n<=105),表示有 nnn 个数组。
接下来 nnn 行,每一行包含:

第一个数首先给出一个正整数 mim_imi​ (1<=mi<=105)(1<=m_i<=10^5)(1<=mi​<=105) ,表示第 iii 个数组的长度。后面的 mim_imi​ 个正整数 ai,ja_{i,j}ai,j​ (1<=ai,j<=109)(1<=a_{i,j}<=10^9)(1<=ai,j​<=109) ,表示第 iii 个数组的第 jjj 个元素。
第 n+2n+2n+2 行包含一个正整数 qqq (1<=q<=105)(1<=q<=10^5)(1<=q<=105) ,表示询问的次数。

接下来 qqq 行,每一行包含:
首先给出一个正整数 pip_ipi​ (1<=pi<=n)(1<=p_i<=n)(1<=pi​<=n) ,表示余姚合并的 pip_ipi​ 个数组得个数。
接下来 pip_ipi​ 个正整数, bi,jb_{i,j}bi,j​ (a<=bi,j<=n)(a<=b_{i,j}<=n)(a<=bi,j​<=n) ,表示第 iii 次询问需要合并的第 jjj 个数组下标。
接下来给出一个正整数 kik_iki​ , kik_iki​ 比超过合并后数组的大小。
数据保证数组中元素总数小于等于 10510^5105 ,询问中的数组下标总数小于等于 10510^5105 。

输出描述

对于每一次询问,都需要输出一行包含一个正整数,表示合并后的数组中的第 kkk 小元素。

输入1

2
1 2
2 1 3
2
1 1 1
2 1 2 2

输出1

2
2

说明1

第一行输入为 nnn ,代表 222 个数组
接了来 222 行表示有 222 个数组,分别为数组 111 和数组 222 ,数组 111 的元素为 222 ,数组 222 的元素为 111 和 333
接下来的 222 表示询问 222 次
询问第 111 次需要合并的数组个数为 111 个,也就是不需要合并,选中的数组为 111 ,数组 111 只有 111 个元素,是 222 ,第 111 小的元素也就是 222 ,输出 222
询问第 222 次需要合并的数字个数为 222 个,需要合并,选中的数组为 111 和 222 ,数组 111 和数组 222 合并之后为: [2,1,3][2, 1, 3][2,1,3] ,第 222 小的元素也是 222 ,输出 222

输入2

5
1 1
2 2 3
3 5 10 6
4 4 58 2 1
5 1000000000 9 8 4 5
5
1 2 2
2 2 3 3
3 3 4 5 11
4 5 4 3 2 1
5 1 2 5 4 3 7

输出2

3
5
58
1
4

说明2

第一次询问,只包含第二个数组,一共有 222 个数: 222 和 333 。第 222 小的元素为 333 。
第三次询问,包含三个数组:第三、第四和第五,一共有 121212 个数。其中第 111111 小的元素为 585858 。

四、奖金发放

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++ 262144K,其他语言 524288K
64bit IO Format: %lld

题目描述

某公司年终共拿出 www 元,用于发放奖金(不需要用完)。公司共有 nnn 位员工(员工总数为奇数),每位员工贡献不同,发放奖金少于 xix_ixi​ 元会让他自己不满意,多余 yiy_iyi​ 元会让其他员工不满意。现在想提出一种奖金发放的方案,使得所有人都满意,同时使得所有员工拿到奖金的中位数最大,求这个最大的中位数?

本题为ACM模式,请通过代码实现题目,过程中的输入输出请自行处理,处理方式参考题目输入输出描述或左侧例题。

输入描述

第一行两个正整数,员工数 nnn ,奖金总数 www;接下来 nnn 行:
每行两个正整数 ,每个人的奖金下限 xix_ixi​ 、奖金上限 yiy_iyi​ 。

输出描述

一个正整数,最大的奖金中位数。

输入

3 20
8 10
1 4
7 9

输出

9

说明

三人分别发放奖金 101010 、111 、999 元,奖金中位数最大为 999 。

备注

1<=n<=1051 <= n <= 10^51<=n<=105
1<=w<=10141 <= w <= 10^141<=w<=1014
1<=xi<=yi<=1091 <= x_i <= y_i <= 10^91<=xi​<=yi​<=109
∑xi<=w<=∑yi\sum^{}_{}{x_i} <= w <= \sum^{}_{}{y_i}∑​xi​<=w<=∑​yi​

五、整数倍购物

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++ 262144K,其他语言 524288K
64bit IO Format: %lld

题目描述

牛牛陪牛妹来到商场购物,许久没有逛商场的牛妹像发了疯似的挑选了起来。很快,牛妹挑选出了一共 nnn 件商品,为了方便区别,给其编号为 1,2,…,n1, 2, …, n1,2,…,n ,其中,第 iii 件商品的价格为 wiw_iwi​

牛牛一算总额,惊人地发现,这些东西太贵了,如果全部买下的话,自己的全部身家就没了。于是,牛牛找了个借口说道:“今天银行卡限额了,只能刷出整 mmm 倍数的金额,这些东西,可能……”

还没等牛牛说完,牛妹就明白了牛牛的意思,于是,准备从这 nnn 件商品中挑选若干件,使其总额恰好为 mmm 的整倍数。

牛牛在一旁盘算着,如果牛妹足够聪明,在满足 mmm 的整倍数的条件下,她会挑出最大的商品总金额。

所以请你告诉牛牛,最坏的情况下,这次购物之后,他的全部身家还能剩下多少。

本题为ACM模式,请通过代码实现题目,过程中的输入输出请自行处理,处理方式参考题目输入输出描述或左侧例题。

输入描述

第一行输入一个正整数 TTT (1<=T<=105)(1 <= T <= 10^5)(1<=T<=105),代表测试数据的组数。

对于每组测试数据,第一次输入一个正整数 n,mn, mn,m (1<=n<=1051 <= n <= 10^51<=n<=105; 1<=m<=1001<= m <= 1001<=m<=100) ,依次代表牛妹第一次挑出的商品数量,以及牛牛编造的整 mmm 倍数金额。

题目保证,所有测试数据的 nnn 之和不会超过 10610^6106.

输出描述

对于每组测试数据,一行输出一个整数代表答案。

输入

2
3 3
3 6 9
3 5
9 6 3

输出

0
3

说明

第一组测试数据中,3+6+9=183 + 6 + 9 = 183+6+9=18 ,是 333 的倍数,所以恰好花光牛牛的全部身家。

第二组测试数据中,要求总金额是 555 的备注,显然,对牛妹来说,最高花费的组合为 9+6=159 + 6 = 159+6=15 ,此时,牛牛的全部身家还剩下 333 .

腾讯笔试题20210321相关推荐

  1. android获取指针空间大小_腾讯笔试题:浅谈计算机中cpu位数和指针

    来一个腾讯笔试题 在刷题的时候看到了腾讯笔试题的这个问题 long a = (long)(((int *) 0) + 4);printf("%ld ",a); 请问输出 a 的值是 ...

  2. 【转】IT名企面试:腾讯笔试题(2)

    摘要:想要进入腾讯公司,面试笔试题是一定要有所准备的.那么这里我们总结了一些腾讯笔试题,例如:const的含义及实现机制等问题. 腾讯是国内数一数二的IT企业了.那么每年想要进入腾讯公司的应聘者也是络 ...

  3. 【腾讯笔试题】2019年腾讯实习正式批移动端开发笔试题

    2019年腾讯实习正式批移动端开发笔试题 说明 不定项选择题 编程题 1.小Q与橙汁 题目描述 输入描述 输出描述 示例1 输入 输出 示例2 输入 输出 2.打怪兽 题目描述 输入描述 输出描述 示 ...

  4. 腾讯笔试题 如下代码,result变量的输出结果是多少

    链接:https://www.nowcoder.com/questionTerminal/fb01e2436c6d453abbbf9801f794165b?pos=102&mutiTagIds ...

  5. 与0xf2值相等的是python_腾讯笔试题涵盖的基础知识

    1.下列减少内存碎片的方法有哪些是正确的? 增加实际申请和释放的次数 频繁调用的子函数尽量使用栈内存 系统申请一大块内存,自己实现内存分配和释放,定时清理内存 降低虚拟内存的大小 解答: 答案2,3是 ...

  6. 腾讯笔试题_20220424

    前言 笔试一共五道编程题,满分是100分,时间是两个小时,可以跳题,使用的平台是牛客网,允许跳出界面使用本地IDE. 题目一:构建数字 给定n个长度均为m的数字字符串,从上往下构建成m个新的数,去掉前 ...

  7. 腾讯笔试题--微信红包

    本来这题没什么难度,不值得我写博客的,谁知道一个失误花了半小时才做出来.写下来告诫自己不要再犯错. 春节期间小明使用微信收到很多个红包,非常开心.在查看领取红包记录时发现,某个红包金额出现的次数超过了 ...

  8. LIFE可以做C语言标识符吗,09腾讯笔试题(转)

    答案:#define Max(a,b)  (a/b)?a:b 相关: (1)在C语言源程序中允许用一个标识符来表示一个字符串,称为"宏".被定义为"宏"的标识符 ...

  9. 2011.10.23朗讯笔试题

    写一个函数,将节点插入双向链表中. 写出你校园网或者家里上网用的网络设备或服务器(依据tcp/ip) 写出ipad在出厂前要经过的测试 Bt跟迅雷的区别. 如果成员数据是引用,怎样初始化它. 怎样申明 ...

最新文章

  1. 最长公共子序列_Java恶意序列化背后的历史和动机
  2. python装饰器原理-Python装饰器完全解读
  3. asinh函数_JavaScript中带有示例的Math.asinh()方法
  4. 调剂厦大计算机,2017智能系硕士统考研究生调剂信息
  5. linux echo输出转义换行回车引号
  6. Docker 系列 _ 01_ 一念缘起
  7. bzoj 2216: [Poi2011]Lightning Conductor(DP决策单调性)
  8. 从零开始——基于角色的权限管理01(补充)
  9. linux重启gpu_远程配置Ubuntu深度学习服务器GPU驱动+Docker+CUDA多个版本
  10. msf拿shell后中文乱码解决
  11. C++执行shell命令
  12. 单片机c语言设计电风扇,基于单片机的智能电风扇的设计(毕业论文).docx
  13. 企业微信API学习笔记
  14. 真是其了怪的jwplayer
  15. 借一篇论文了解重要性采样
  16. 通过LNK文件(快捷方式)解析出目标文件的路径
  17. 如何解决 win10 2016Excel 显示界面全为英文的情况
  18. 微信小程序—在原有数组内添加元素
  19. Antd的Upload组件上传文件控制文件数量、格式等,以及提交时如何获取文件
  20. java——配置环境变量

热门文章

  1. python小玩意——猜数字游戏
  2. Ubuntu更新卡在 flashplugin-installer
  3. 企业如何做好邮件归档稽核
  4. 团队沟通中的误区与技巧(zt)
  5. 组网胖模式_胖AP和瘦AP的区别、组网优缺点分析
  6. android 查看设备 x86,有了它 x86安卓设备就能用Windows软件了
  7. 【数学 裴蜀定理】luogu_4549 裴蜀定理
  8. 最老程序员创业札记:全文检索、数据挖掘、推荐引擎应用26
  9. Python Pillow批量转换tif格式到jpg
  10. Unity 中实现子弹时间效果