网易有道9.4

第三题:一个仅由r、'e、d组成的字符串,每次操作可以将一个r变成e,或者e'变成d,或者d变成r。最终字符串任意相邻字符都不相等.最少要操作多少次??
第四题: 小红拿到了一个正整数n,她想把n拆分成若干数之和。但是有一个限制,和式中相邻两数的奇偶性必须不同。例如对于6而言,6=1+2+3、6=3+2+1、6=1+2+1+2均为合法的和式,但6=2+4不台法,因为相邻的两数均为偶数。小红想知道,对于n的拆分,共有多少种不同的和式?
这两题有没有a的大佬讲讲思路
#网易笔试##网易有道#
全部评论
把red换成123 dp[i][j]表示第i位为j时,从0-i达到满足要求需要的最小操作次数 则若原始串第i个位置为h, dp[i][j] = min(dp[i-1][k] * (k!=j) + trans(h,j)) 即前一个位置和j不相等的方案数+当前字符转换到j所需要的次数取最小值。 第四题 先打表找规律, 1:1 2:2 3:[1,2],[2,1],[3] 4:[1,2,1],[4] 5:[1,4],[2,1,2],[2,3],[3,2],[4,1],[5] 可以看到,第i个数的方案等于用1去和i-1的方案中以偶数开头的方案去组合,用2和i-2的奇数方案组合,以此类推,直到本身和0组合得到本身。 这样我们可以把每个数的方案数按照奇偶数开头分别存储,则有 odd[i] = even[i-1] + even[i-3] + ... even[i] = odd[i-2] + odd[i-4] + ... 再按照i的奇偶加到对应的位置上,可以看到是可以通过前缀和来优化到O(N)递推的,然后因为判断i的奇偶这里,导致我没够造出来对应的矩阵去做矩阵快速幂....
1 回复 分享
发布于 2022-09-05 09:27 北京
hi~同学,秋招遇“寒气”,牛客送温暖啦!23届秋招笔面经有奖征集中,参与就得牛客会员7天免费体验,最高赢300元京东卡!戳我去看>>>https://www.nowcoder.com/link/zhengjipinglun
点赞 回复 分享
发布于 2022-09-05 12:01 北京
第三题动态规划,构建3*n的矩阵,分别存以‘r’,‘e',’d&(31190)#39;结尾的最小合法序列的改变次数,然后去最后一项的最小值就可以了 第四题完全没思路,从1猜到300多也就4%
点赞 回复 分享
发布于 2022-09-04 18:24 浙江

相关推荐

03-27 17:33
门头沟学院 Java
代码飞升:同学院本,你要注意hr当天有没有回复过,早上投,还要打招呼要推销自己,不要一个劲投
点赞 评论 收藏
分享
评论
3
2
分享

创作者周榜

更多
牛客网
牛客企业服务