三线建设学兵连网站西安地区联系人,建设网站的一些基本代码,wordpress机器人抓取,北京百度网讯科技有限公司文章目录1. 题目2. 解题1. 题目
假设你有一个特殊的键盘包含下面的按键#xff1a;
Key 1: (A)#xff1a;在屏幕上打印一个 A。Key 2: (Ctrl-A)#xff1a;选中整个屏幕。Key 3: (Ctrl-C)#xff1a;复制选中区域到缓冲区。Key 4: (Ctrl-V)#xff1a;将缓冲区内容输出…
文章目录1. 题目2. 解题1. 题目
假设你有一个特殊的键盘包含下面的按键
Key 1: (A)在屏幕上打印一个 A。Key 2: (Ctrl-A)选中整个屏幕。Key 3: (Ctrl-C)复制选中区域到缓冲区。Key 4: (Ctrl-V)将缓冲区内容输出到上次输入的结束位置并显示在屏幕上。现在你只可以按键 N 次使用上述四种按键请问屏幕上最多可以显示几个 A’呢
样例 1:
输入: N 3
输出: 3
解释:
我们最多可以在屏幕上显示三个A通过如下顺序按键
A, A, A样例 2:
输入: N 7
输出: 9
解释:
我们最多可以在屏幕上显示九个A通过如下顺序按键
A, A, A, Ctrl A, Ctrl C, Ctrl V, Ctrl V注释:
1 N 50
结果不会超过 32 位有符号整数范围。来源力扣LeetCode 链接https://leetcode-cn.com/problems/4-keys-keyboard 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题 只按一个键A直接在前一个状态的个数1按ACV的话可以从前面所有可能的位置ACV一次以后一直VVV可以粘贴以后VVV好于ACV但是ACVV 好于VVVV数量一样但是前者粘贴板的A数量多 class Solution {
public:int maxA(int N) {vectorint dp(N1,0);//dp[i] 表示第 i 次按下键的最多A个数for(int i 1, j; i N; i){dp[i] max(dp[i], dp[i-1]1);//按下A键for(j 0; j i-2; j)//从前面可以的地方选一次进行ACV后面一直V...// -2 表示 AC的少了2次后面可以一直粘i-j-2次 原来自己一次dp[i] max(dp[i], dp[j]*(i-j-1));}return dp[N];}
};0 ms 6.1 MB 我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号Michael阿明一起加油、一起学习进步