CSDN第58期编程竞赛活动经验

都是老题目了,孰能生巧吧。

1、题目名称:打家劫舍

一个小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。

跟爬楼梯有点像,就一个公式
Fi=MAX(Fi-1,Fi-2+ai)
可以初始化,后面循环算即可
F1=a1
F2=MAX(a1,a2)

2、题目名称:小Q的鲜榨柠檬汁

团建活动是大家所想要的。 小Q给大家准备了鲜橙汁。 现在有n个朋友买回了k瓶饮料,每瓶有l毫升的饮料,同时还买回了c个柠檬, 每个柠檬可以切成d片,p克盐。 已知每个朋友需要nl毫升的饮料,一片柠檬,以及np克盐。 小Q想知道每个朋友最少可以喝多少杯饮料。

纯粹的数学题
饮料能分多少杯:kl/nl
柠檬能分多少片:c
d
食盐能分多少份:p/np
获取上面的最小值再除以人数就是结果

3、题目名称:收件邮箱

已知字符串str,str表示邮箱的不标准格式。 其中”.”会被记录成”dot”,”@”记录成”at”。 写一个程序将str转化成可用的邮箱格式。(可用格式中字符串中除了开头结尾所有”dot”,都会被转换,”at”只会被转化一次,开头结尾的不转化)

暴力破解即可,我用的是C,一个个遍历复制到新数组的
会用替换函数就比较高级了

4、题目名称:莫名其妙的键盘

有一个神奇的键盘,你可以用它输入a到z的字符,然而每当你输入一个元音字母(a,e,i,o,u其中之一)的时候,已输入的字符串会发生一次反转! 比方说,当前输入了tw,此时再输入一个o,此时屏幕上的字符串two会反转成owt。 现给出一个字符串,若用该键盘输入,有多少种方法可以得到?

之前见还挺复杂,现在就是背公式了,根据首尾是否是元音分成四种情况

f(str)=
str长度为1:1
开始元音,结束元音:f(反转str[:-1])
开始元音,结束不是:f(反转str[:-1])+:f(str[:-1])
开始不是,结束元音:0
开始不是,结束不是:f(str[:-1])

记住公式就行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值