首页 > 其他分享 >Sol.CF447B

Sol.CF447B

时间:2023-09-12 19:45:35浏览次数:32  
标签:int Sol maxn str CF447B include

随机跳题跳到的,写篇题解吧

题意

给定字符串 \(s\),和每个字母的价值,问你在字符串后再增加 \(k\) 个字符后能获得的最大价值。

  • 题目中定义价值为 \(\sum_{i=1}^{len} i \times W_{S_i}\)。

思路

仔细观察发现题目不难,是个贪心,找出这些价值中的最大值,然后拿最大值进行计算,最后注意要乘上 \(W_i\)。

Code

#include<iostream>
#include<string>
using namespace std;
string str;
int k,a[30],ans,maxn=-2147483647;
int main(){
	cin>>str>>k;
	for(int i=1;i<=26;i++){
		cin>>a[i];
		maxn=max(a[i],maxn);
	}
	for(int i=1;i<=str.size();i++){
		ans+=(i+1)*a[s[i]-'a'];
	}
	for(int i=1;i<=k;i++){
		ans+=maxn*(i+str.size());
	}
	cout<<ans;
	return 0;
}

标签:int,Sol,maxn,str,CF447B,include
From: https://www.cnblogs.com/JacoAwA/p/CF447B.html

相关文章

  • Sol.CF383D
    可以看出本题可以使用DP。可将前\(i\)个和为\(j\)的方案数表示为\(f_{i,j}\),则每次状态转移需要考虑减\(a_i\)或加\(a_i\)。显而易见状态转移方程如下:\(f_{i,j}=f_{i,j}+f_{i-1,j\pma_i}\)由于可能有负数,则需要平移。具体代码如下:#include<iostream>usingna......
  • Sol.CF811B
    题意给定长度为\(n\)的排列,每次选一段区间\([l,r]\)排序,问位置\(x\)上的数在排序前后是否发生了改变。保证\(x\in[l,r]\),共\(q\)次询问。思路可以暴力枚举区间\([l,r]\)内比\(a_x\)小的数,每找到一个\(cnt\)累加一次,最后根据\(l+cnt\)是否等于\(x\)输出代......
  • Sol.CF113C
    前置知识:费马二平方和定理内容如下:除\(2\)以外的素数\(x\)都可以表示成\(x\equiv1\pmod{4}\)或\(x\equiv3\pmod{4}\)。当且仅当素数\(x\)可以表示成\(x\equiv1\pmod{4}\)时,\(x\)为两数平方之和。为了更高效,筛素数时使用欧拉筛,注意到int会爆,所以用bi......
  • Sol.CF1037B
    又是随机跳题跳到的,再来写一篇题解。不难发现又是一道用贪心解决的问题。首先先对序列进行排序。然后发现题目分为以下三种情况(\(mid\)为中位数,当前中位数为\(s\))\(s=mid\)输出特判即可。\(s>mid\)在序列的左边只要找到比\(s\)大的就累加他们的差进答案。\(s<......
  • Sol.UVA10127
    题意:给定\(n\),找到形如\(1111...1111\)的数\(y\),使得\(y\equiv1\modx\),最终输出\(y\)的位数。思路:形如\(1111...1111\)的数可以拆分成\(10...00\times1+10...0\times1+...+10\times1+1\),因此我们可以每次让$y=y\times10+y$,每次判断是否能整除\(......
  • Sol.CF301A
    签到题中夹带着贪心考虑要尽可能把所有数变成正数。若\(n\)为奇数,则一定可以变成全部正数,首先翻出\(n\)个负数,其他的下一次翻完。若\(n\)为偶数,显然定有一个数还是负数,考虑最小的哪个。Accept代码如下:#include<iostream>#include<cmath>#definerep(a,b,c)for(int......
  • Sol.P6192
    Upd:开坑了,等会再补Upd2023/8/24:补完了!!Upd:改了很多遍了,希望管理过审或明确帮忙指出一下到底哪行有问题qwq谢谢题目传送门前置知识:最小斯坦纳树最小斯坦纳树可以理解为升级版的最小生成树。首先给定图\(G=(V,E)\),以及\(V\)的子集\(U\),\(U\)中的点为终端节点。最小斯坦......
  • 提取.NET开发的DLL中的类为json文件工具软件ConsoleApp_Dll_Class2Json_V1.0开源了
    提取.NET开发的DLL中的类为json文件工具软件ConsoleApp_Dll_Class2Json_V1.0开源了同步在github和gitee上面发布。github https://github.com/binghe021/ConsoleApp_Dll_Class2Jsongitee https://gitee.com/binghe021/ConsoleApp_Dll_Class2Json......
  • sol. CF1680F Lenient Vertex Cover
    CF1680FLenientVertexCover下面用\(G\)表示一个环的边集,记作环\(G\)。我们令一个环\(G\)的价值为它经过的返祖边数量,记作\(Z(G)\),下面给出核心结论:若存在一条边\(e_0\)经过所有\(Z(G)=1\)的奇环,且不经过任意一个\(Z(G)=1\)的偶环,那么\(e_0\)经过所有奇环......
  • Springboot项目中pom.xml配置文件无法解析下载oracl数据库解决办法(Cannot resolve com
    网上说是因Oracle的版权问题,导致maven下载不下来ojdbc各个版本的jar包。就会报错Cannotresolvecom.oracle:ojdbc6:11.2.0.1.0 经过一番百度,找到了一个适用的解决方法,如下操作即可:1.在终端或客户端机器上找到oracle安装驱动目录:例如:E:\myorcl\product\11.2.0\dbhome_1\j......