![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
牛客
小-豪-豪
这个作者很懒,什么都没留下…
展开
-
三分法解决假币问题
今天遇到一道题,第一眼就想到了用二分法来解决,可是二分法却没有通过,后来才知道三分法才是解决找假币最快的方法,题目描述如下:思路:当硬币的个数只有一个时,需要0次。当硬币个数为2时,需要1次。当硬币个数大于等于3时,我们按下面方法将硬币分为3堆:n%3=0,分为n/3、n/3、n/3三堆。由于要求最坏情况,我们先用天平对n/3和n/3检测,失败后再对n/3个硬币做三分法。n%3=1,分...原创 2020-04-02 20:59:40 · 4769 阅读 · 0 评论 -
两个超级大的整数做加法
最近做题经常碰到题目中说输入两个超级大整数,然后让童鞋对这两个超级大整数做运算,一开始我还因为题目有问题,哪有整形可以放得下这么大的整数,后来看了前人的做题思路后发现是我无知了,以下面这道题对这种方法做一个记录。题目描述:思路:用两个字符串来存放两个整数,然后用字符串模拟加法的运算,这样就可以对超级大的整数做加法运算了。#include <iostream>#include ...原创 2020-04-01 23:22:50 · 374 阅读 · 0 评论 -
不用加减乘除做加法
题目:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。思路:1、10进制的加法三步走(175+69)(1) 先不考虑进位,175+69得到134。(2)计算进位值,个位上5+9的进位为1,十位上的7+6的进位为1所以进位为11*10=110 (要乘以10是因为进一位相当于乘10)。(3)重复(1),(2),直到没有进位制产生,就结束了。(134+110=24...原创 2020-04-01 23:04:30 · 81 阅读 · 0 评论 -
力扣编程题分析(150):逆波兰表达式求值
题目描述根据逆波兰表示法,求表达式的值。有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。思路:波兰表达式又称后缀表达式,后缀表达式求值过程如下:规则:从左到右遍历表达式的每个数字和符号,遇到数字就进栈,遇到字符就将栈顶的...原创 2020-01-22 09:45:57 · 324 阅读 · 0 评论 -
牛客编程题分析(剑指offer C++):跳台阶
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。思路:当台阶数是0、1、2时,青蛙的跳法分别为jump(0) = 0、jump(1) = 1、jump(2) = 2。当台阶数为3时,青蛙的第一跳有两种跳法,当第一次跳一个台阶时,剩下的台阶跳法就是jump(2),当第一次跳两个台阶时,剩下的台阶跳法就是jump(1),...原创 2020-01-05 11:18:19 · 161 阅读 · 0 评论 -
牛客编程题分析(剑指offer C++):变态跳台阶
题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路:当只有一个台阶时只有一种跳法jump(1)=1。两个台阶时第一次跳如果跳一个,那么有jump(1)种跳法,第一次如果跳jump(n=2)个,那么有一种跳法,一共jump(2)=jump(1)+1种。三个台阶时第一次如果跳一个,那么有jump(2)种跳法,第一次如果跳2个...原创 2020-01-06 10:16:15 · 154 阅读 · 0 评论 -
力扣编程题分析(67):二进制求和
题目描述给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。思路:char * addBinary(char * a, char * b){ int tag = 0; int aLength = strlen(a); int bLength = strlen(b); int resultLen = (aLengt...原创 2020-02-25 17:21:36 · 274 阅读 · 0 评论 -
动态规划编程题总结
1、跳石板小易来到了一条石板路前,每块石板上从1挨着编号为:1、2、3…这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的 石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。 小易当前处在编号为N的石板,他想跳到编号恰好为M的石板去,小易想知道最少需要跳跃几次可以到达。例如:N = 4,M = 24:4->6-&...原创 2020-03-16 14:23:21 · 283 阅读 · 0 评论 -
让我头疼的手套问题
题目描述:在地下室里放着n种颜色的手套,手套分左右手,但是每种颜色的左右手手套个数不一定相同。A先生现在要出门,所以他要去地下室选手套。但是昏暗的灯光让他无法分辨手套的颜色,只能分辨出左右手。所以他会多拿一些手套,然后选出一双颜色相同的左右手手套。现在的问题是,他至少要拿多少只手套(左手加右手),才能保证一定能选出一双颜色相同的手套。给定颜色种数n(1≤n≤13),同时给定两个长度为n的数组l...原创 2020-03-21 18:16:11 · 208 阅读 · 0 评论