1004 Counting Leaves(Ordinary)
A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.
Input Specification:Each input file contains one test case. Each case starts with a line containing 0<N<100, the number of nodes in a tree, and M (<N), the number of non-leaf nodes. Then M lines follow, each in the format:
1ID K ID[1] ID[2] ... ID[K]
where ID is a two-digit number representing a given non-leaf node, K is the number of its children, followed by a seque ...
1003 Emergency(Ordinary)
As an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams in each city and the length of each road between any pair of cities are marked on the map. When there is an emergency call to you from some other city, your job is to lead your men to the place as quickly as possible, and at the mean time, call up as many hands on the way as possible.
Input Specification:Each input file ...
1002 A+B for Polynomials(Easy)
This time, you are supposed to find A+B where A and B are two polynomials.
Input Specification:Each input file contains one test case. Each case occupies 2 lines, and each line contains the information of a polynomial:$$ K N_{1} a_{N_{1}} N_{2} a_{N_{2}} \ldots N_{K} a_{N_{K}} $$where K is the number of nonzero terms in the polynomial,$$ N_{i} \text { and } a_{N_{i}}(i=1,2, \cdots, K)$$ are the exponents and coefficients, respectively. It is given that :$$ 1 \leq K \leq 10,0 \leq N_{K}<\cdots ...
1001 A+B Format(Easy)
Calculate a+b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).
Input Specification:Each input file contains one test case. Each case contains a pair of integers a and b where $$-10^{6} \leq a, b \leq 10^{6} $$. The numbers are separated by a space.
Output Specification:For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.
Sample Inp ...
在线编程--华为(2020年4月29日)
1有重复的字符串(全小写)的全排列个数
输入描述输入字符串中无空格;字符个数不超过8个;
输出描述无
示例1输入
abc
输出
6
说明
acb bca abc cba bac cab
示例2输入
aab
输出
3
备注
输入为空,输出为0
备注组合数学问题:有重集合全排列数(n!/(n1!...nk!))
例如:abb=>{abb,bab,bba}个数为3,等价于3!/(1!2!) = 6/(12) = 3
2假设两台计算机之间有一种特殊的协商密钥的方式:A计算机先发给B一个字符串M,B再发给A一个数字k,从M中移除k个字母后,得到的字典序最小的字符串即为两者后续通信的密钥。试根据给定的M和k,返回最终合法的密钥。字符串M中仅包括小写英文字母,100000>=M.len>k;
输入描述第一行为字符串第二行为数字,表示从字符串中移除几位
输出描述移除若干字母后的字典序最小的字符串
备注单调栈:维护一个单调递增栈当入栈元素大于栈顶则入栈,当入栈元素小于栈顶则栈顶出栈,一直到栈顶比入栈元素小或出栈个数为K时停止入栈。停止入栈情况1:字符串遍历结束,但 ...
在线编程--广联达笔试(2020年5月13日)
1一夺宝比赛共5人报名参加,奖励为一堆金币,比赛规则如下:
参赛者互不认识,也不知道其他人的存在
参赛者不知道比赛的整体进度及其他人的当前名次
每名参赛者找到金币后需要先将金币分成5等份,然后拿走自己那一份
若金币不能被5等份,需要参赛者先从自己口袋里面补充一些金币进去,然后5等份
5个人都找到金币后,比赛结束
比赛结束后,,已知参赛者在平分金币时每人都补充了1个金币进去,而且最终剩余的金币数量在1000至2000之间
请编码计算5名参赛者各自拿到了多少金币?
2 【编程题】农夫有一块土地需要灌溉,现将这块土分为N* M个1 *1的小方块,然后农夫随机向这方块中放入数根水管。已知每过一个小时,水管中的水就会蔓延到该方块上下左右的四个方块之中,请问k小时后,有多少个方块仍然需要被灌溉?输出:未被灌溉的方块个数例如:
[
[0,1,0,0,0][0,0,0,1,0][0,1,0,0,0][0,0,0,0,0]
]
输出:1解析:1小时后:
[
[1,1,1,1,0][0,1,1,1,1][1,1,1,1,0][0,1,0,0,0]
]2小时后:
[
[1,1,1,1,1][1,1,1,1, ...
剑指offer--刷题目录
剑指offer–刷题目录
Title
Method
Remark
TODO
面试题03. 数组中重复的数字(简单)
哈希表
未回看
面试题04. 二维数组中的查找(简单)
矩阵搜索
暴力求解不可,超时
未回看
面试题05.替换空格(简单)
字符串
未回看
面试题06. 从尾到头打印链表(简单)
栈
注意数组和链表不一样
未回看
面试题07. 重建二叉树(较难)
二叉树,递归
未回看
236. 二叉树的最近公共祖先/面试题68 - II. 二叉树的最近公共祖先(简单)
236. 二叉树的最近公共祖先/面试题68 - II. 二叉树的最近公共祖先(简单)给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。
百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”
例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]
示例 1:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 1输出: 3解释: 节点 5 和节点 1 的最近公共祖先是节点 3。
示例 2:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 4输出: 5解释: 节点 5 和节点 4 的最近公共祖先是节点 5。因为根据定义最近公共祖先节点可以为节点本身。
说明:所有节点的值都是唯一的。p、q 为不同节点且均存在于给定的二叉树中。
来源:力扣(LeetCode)链接:https://leetcode-cn ...
235. 二叉搜索树的最近公共祖先/面试题68 - I. 二叉搜索树的最近公共祖先(简单)
235. 二叉搜索树的最近公共祖先/面试题68 - I. 二叉搜索树的最近公共祖先(简单)给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。
百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”
例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5]
示例 1:输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 8输出: 6 解释: 节点 2 和节点 8 的最近公共祖先是 6。
示例 2:输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 4输出: 2解释: 节点 2 和节点 4 的最近公共祖先是 2, 因为根据定义最近公共祖先节点可以为节点本身。
说明:所有节点的值都是唯一的。p、q 为不同节点且均存在于给定的二叉搜索树中。
来源:力扣(LeetCode)链接:https://leet ...
8. 字符串转换整数 (atoi)/面试题67. 把字符串转换成整数(一般)
8. 字符串转换整数 (atoi)/面试题67. 把字符串转换成整数(一般)写一个函数 StrToInt,实现把字符串转换成整数这个功能。不能使用 atoi 或者其他类似的库函数。
首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。
当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。
该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字符可以被忽略,它们对于函数不应该造成影响。
注意:假如该字符串中的第一个非空格字符不是一个有效整数字符、字符串为空或字符串仅包含空白字符时,则你的函数不需要进行转换。
在任何情况下,若函数不能进行有效的转换时,请返回 0。
说明:假设我们的环境只能存储 32 位大小的有符号整数,那么其数值范围为 [−2^31, 2^31 − 1]。如果数值超过这个范围,请返回 INT_MAX (2^31 − 1) 或 INT_MIN (−2^31) 。
示例 1:输入: "42&quo ...