B. DZY Loves Strings
来源:互联网 发布:近年物流业发展数据 编辑:程序博客网 时间:2024/05/22 07:41
DZY loves collecting special strings which only contain lowercase letters. For each lowercase letter c DZY knows its value wc. For each special string s = s1s2... s|s| (|s| is the length of the string) he represents its value with a function f(s), where
Now DZY has a string s. He wants to insert k lowercase letters into this string in order to get the largest possible value of the resulting string. Can you help him calculate the largest possible value he could get?
The first line contains a single string s (1 ≤ |s| ≤ 103).
The second line contains a single integer k (0 ≤ k ≤ 103).
The third line contains twenty-six integers from wa to wz. Each such number is non-negative and doesn't exceed 1000.
Print a single integer — the largest possible value of the resulting string DZY could get.
abc31 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
41
In the test sample DZY can obtain "abcbbc", value = 1·1 + 2·2 + 3·2 + 4·2 + 5·2 + 6·2 = 41.
解题说明:此题是典型的贪心,找到一个权值最大的字母,把其插入到字符串最后即可。
#include<iostream>#include<cstdio>#include<cmath>#include<algorithm>#include<cstdlib>#include<cstring>using namespace std;int main(){char s[1010];int k,w[26],v=0,max=0;int i,j;scanf("%s",&s);scanf("%d",&k);for(i=0;i<26;i++){scanf("%d",&w[i]);if(w[i]>max){max=w[i];}}for(i=0;s[i]!='\0';i++){v+=w[s[i]-'a']*(i+1);}for(j=0;j<k;i++,j++){v+=max*(i+1);}printf("%d\n",v);return 0;}
- B. DZY Loves Strings
- B. DZY Loves Strings
- 447B. DZY Loves Strings
- Codeforces 447B DZY Loves Strings
- CF 447B(DZY Loves Strings-贪心)
- codeforces-447B-DZY Loves Strings
- CodeForces 447B---DZY Loves Strings
- CodeForces 447B DZY Loves Strings
- CodeForces 447B DZY Loves Strings
- Codeforces 447B DZY Loves Strings
- CF 447B DZY Loves Strings(水题)
- DZY Loves Strings
- Codeforces Round #FF (Div. 2) Problem B DZY Loves Strings
- Codeforces Round #FF (Div. 2):B. DZY Loves Strings
- Codeforces Round #FF (Div. 2) B. DZY Loves Strings
- Codeforces Round #FF (Div. 2) 447B DZY Loves Strings
- Codeforces Round #FF (Div. 2)B. DZY Loves Strings
- Codeforces Round #FF (Div. 2)B. DZY Loves Strings
- 哪种PDF转换器转换效果好
- 判断单链表是否存在环有问题
- android开发,使用fragment加载webview,加载出现1秒空白。
- 关于java为什么在Method中局部内部类或者匿名内部类调用Method中定义的变量要用final修饰?
- Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
- B. DZY Loves Strings
- c++ 简单模拟实现 游戏定时开启任务
- Altium Desinger 6.9 的PCB规则设置
- 最小生成树之 prim算法和kruskal算法(以 hdu 1863为例)
- HDU3015 Disharmony Trees
- 解决无线路由器连接AP外置型epon上行e8-c家庭网关无法上网的问题
- C++两个不同类成员之间的调用
- 猜数:首先生成一个介于1-100之间的整数,从键盘不断输入数值直到该数值与生成的那个数相符为止,并打印出猜数的次数。
- MFC学习笔记(3)—— 消息(2)