全部评论
深度优先+剪枝 过了98.3% 想不超时的关键是一定要控制好只加一个X的次数 一开始就有4个X,后续最多有4次单加X的操作,这样过了98.3% 但肯定不准确,如果是开始就是X,后续可以无限单加X,就肯定能过,问题是要超时
送花
回复
分享
我动态规划的,vec[i][j] 表示打了i个字且剪贴板有j个字
送花
回复
分享
秋招专场
官网直投
这样一条路径才可能是最优的: ctrl+A -> ctrl+C -> ESE -> ctrl+V(可能有多次,直到粘贴后超出总字符个数) 我从前往后算的,第i个是dp[i]次按键,那么dp[i*2]=min(dp[i*2], dp[i]+7),dp[i*3]=min(dp[i*3], dp[i]+9),......
送花
回复
分享
我用的动规,过了66% i表示字符数 dp[1] = 1; for(i = 2;i <= N;++i) { dp[i] = dp[i-1] + 1;//在上一次的基础上按一个键 //假设从第j个字符开始拷贝,拷贝需要2 + 2 + 1,分别是ctrl a,ctrl c,esc for(int j = 1;j < i;++j) { dp[i] = min(dp[i],dp[j] + 2 + 2 + 1 + 2 * ((i-j)/j + 1));//算出ctrlv的次数*2 } } return dp[N]
送花
回复
分享
我直接dfs 加1 dfs 加7 dfs 复制三种情况反正也过了
送花
回复
分享
相关推荐
点赞 评论 收藏
转发
05-27 10:10
点赞 评论 收藏
转发