给定一个长度为n的字符串,每个位置表示一种颜色。你有一次机会可以消掉一堆颜色相同并且连续的序列,并且得到这个序列的长度的得分。 比如对于字符串aaabbccccc,你可以消掉aaa,可以得到3分,你也可以消掉cccc,得到4分。现在你有k次作弊的机会,每次作弊可以改变字 符串中任意一个位置的颜色,比如aaabaac,你可以把第四个位置的b改成a,这样就能从1消到6,当然你也可以不改变任意位置。现在你需要 输出最大的得分。 为了方便,每种颜色我们用小写的字母来表示,也就是至多有26种颜色。

区块链毕设网qklbishe.com为您提供问题的解答

给定一个长度为n的字符串,每个位置表示一种颜色。你有一次机会可以消掉一堆颜色相同并且连续的序列,并且得到这个序列的长度的得分。 比如对于字符串aaabbccccc,你可以消掉aaa,可以得到3分,你也可以消掉cccc,得到4分。现在你有k次作弊的机会,每次作弊可以改变字 符串中任意一个位置的颜色,比如aaabaac,你可以把第四个位置的b改成a,这样就能从1消到6,当然你也可以不改变任意位置。现在你需要 输出最大的得分。
为了方便,每种颜色我们用小写的字母来表示,也就是至多有26种颜色。

import java.util.*; import java.io.*;  // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main {     public static void main(String[] args)  throws Exception{         BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));         String[] str = bf.readLine().split(" ");         int n = Integer.parseInt(str[0]);         int k = Integer.parseInt(str[1]);         char[] line = bf.readLine().toCharArray();         int[][] dp = new int[n][k];         int res=-1;         for(int i=0;i<n;i++){//求以i结尾,k次作弊的最大分数             int strLen = i+1;             int j=i-1;             while(j>=0 && line[j]==line[i]){j--;}             if(j<0){res=Math.max(res, (i+1));continue;}//从i往前遍历,找到第一个不等于[i]的下标j             j=j-k;//用k次作弊,把j前面k个都变成[i]             while(j>=0 && line[j]==line[i]){j--;}//作弊完,再往前遍历,看有多少相同的下标             if(j<0){res=Math.max(res, (i+1));continue;}             res=Math.max(res, i-j);         }         System.out.println(res);     } }

22:03

以上就是关于问题给定一个长度为n的字符串,每个位置表示一种颜色。你有一次机会可以消掉一堆颜色相同并且连续的序列,并且得到这个序列的长度的得分。 比如对于字符串aaabbccccc,你可以消掉aaa,可以得到3分,你也可以消掉cccc,得到4分。现在你有k次作弊的机会,每次作弊可以改变字 符串中任意一个位置的颜色,比如aaabaac,你可以把第四个位置的b改成a,这样就能从1消到6,当然你也可以不改变任意位置。现在你需要 输出最大的得分。
为了方便,每种颜色我们用小写的字母来表示,也就是至多有26种颜色。的答案

欢迎关注区块链毕设网-
web3一级市场套利打新赚钱空投教程

区块链NFT链游项目方科学家脚本开发培训

从业7年-专注一级市场


微信:btc9767
TELEGRAM :https://t.me/btcok9

具体资料介绍

web3的一级市场千万收益的逻辑


进群点我



qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 给定一个长度为n的字符串,每个位置表示一种颜色。你有一次机会可以消掉一堆颜色相同并且连续的序列,并且得到这个序列的长度的得分。 比如对于字符串aaabbccccc,你可以消掉aaa,可以得到3分,你也可以消掉cccc,得到4分。现在你有k次作弊的机会,每次作弊可以改变字 符串中任意一个位置的颜色,比如aaabaac,你可以把第四个位置的b改成a,这样就能从1消到6,当然你也可以不改变任意位置。现在你需要 输出最大的得分。 为了方便,每种颜色我们用小写的字母来表示,也就是至多有26种颜色。