Coding Practice,48天强训(2)

        C++最近进入进阶尾声,做一些算法题来锻炼动手能力,之前的随堂练习代码严格来说是要做成博客的。但是个人感觉随堂的笔记已经做的很多了,没必要再copy放到博客上来水一次装的看似很努力了,博客上应该放一些更有价值的,譬如前沿或者实用技术分享之类的,譬如之前在做项目时候遇到的关于音响系统如何完成小而美的设计,如何用有限的音频资源,通过pitch和volume的随机轮盘来实现不同的听感,相类似的命题作为博客来说才是比较有价值的,之后有时间我会从程序而非策划的角度来记录这个命题。

        回到今天的主题,像做题这一part我觉得还比较有意思、是感兴趣的,最近安排了48天笔试训练,今天是第二天,每天3题,接下来的笔试强训还有46天我都会记录下题目、思路以及解法,强化自己coding能力的同时也当作近期的一些学习记录,勉励自我。

Topic 1:快递重量与费用

考试时用的笨办法,通过强转后+1来实现“不足1,按1算”。1.05会强转为1;

其实可以考虑ceil函数,包头文件<cmath>,ceil = ceiling(天花板),表示将浮点数向上取整,ceil(1.2) = 2; 简单又优雅。

Topic 2:用最小的花费爬楼梯

最小花费爬楼梯,动态规划的经典问题,做这题之前要做一做斐波拉契数列和爬楼梯问题,这一串是一part的,掌握并不熟练,需要去看一下动态规划的加餐课。

Topic 3:数组中两个字符串的最小距离

几个关键点——

1.用vector<string>来处理“一个数组里放多段字符串”
2.abs函数的使用,计算两个下标之间的绝对值
3.INT_MAX要包头文件#include <climits>
4.要记住,有可能有多个相同string的情况,所以不要忘了在遍历过程中反复更新距离,最后min取小

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值