ZCMU-1484-签到题
来源:互联网 发布:大数据龙头公司 2017 编辑:程序博客网 时间:2024/05/02 01:24
1484: 签到题
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 292 Solved: 66
[Submit][Status][Web Board]
Description
LuxakyLuee是一个非常爱玩的人。
有一天一个叫Kevin·Feng的人向LuxakyLuee发来游戏邀请。
Kevin·Feng摆了一地的键盘冒,上面都是英文字母,让LuxakyLuee从其中任选k个。
选完之后进入清算时间,每一个键帽的分数是总共选取的的该种键帽字母的数量。
如果LuxakyLuee足够机智他能得多少分呢。
Input
多组测试数据。
每组数据有两行。
第一行为n和k,n为键盘冒的数量,k为选取的键盘冒的个数。(1 ≤ k ≤ n ≤ 100000).
第二行为地上的键盘冒(均为大写字母)。
Output
每组数据输出一行,为LuxakyLuee的最高可能得分。
Sample Input
15 10
DZFDFZDFDDDDDDF
6 4
YJSNPI
Sample Output
82
4
HINT
温馨提示:输入时用%s输入字符串,输出时用%lld, OJ 不支持 %I64d !!!
【解析】
这道题我们就让字母数量越多的那个字母先拿我们可以先统计字母的数量,之后我们再进行排序,然后再进行筛选就好了
#include<iostream>#include<string.h>#include<string>#include<cstdio>#include<algorithm>#define MAXN 100010using namespace std;int main(){ long long n,k,i,sum; char s[MAXN]; while(~scanf("%lld%lld",&n,&k)) { getchar(); scanf("%s",s); long long a[26]={0}; for(i=0;i<n;i++) { a[s[i]-65]=a[s[i]-65]+1; } sort(a,a+26); n=25; sum=0; while(k!=0) { if(k>=a[n]) { k=k-a[n]; sum=sum+a[n]*a[n]; } else if(k<a[n]) { sum+=k*k; k=0; } n--; } printf("%lld\n",sum); } return 0;}
0 0
- ZCMU-1484-签到题
- ZCMU 1486: 掰巧克力(签到题) <水坑水坑!!!!>
- 签到题
- 签到题
- 签到题
- ACM-签到 小学题
- 一道签到题
- hpu1695 一道签到题
- 一道签到题
- 一道签到题
- nyoj 1234 签到题
- 1234 签到题【几何】
- hihocoder #1258 签到题
- 1611: 签到题
- 2055 签到题
- F是签到题
- 【Aizu 0189 签到题】
- P3601 签到题
- breadcrumb (Bootstrap)
- bat手动备份数据库,当前时间命名备份文件名
- 芯片测试矩阵的相关计算
- PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
- Eclipse修改编码格式
- ZCMU-1484-签到题
- C#的模板真不好用
- ubuntu系统设置打不开怎么办?
- 【leetcode】116. Populating Next Right Pointers in Each Node【java】
- Note--查询第几条记录
- Network、互联网、Internet和Web的区别和联系
- jquery实现点击复选框,勾选所有复选框,再次点击取消全选
- sparkR安装:linux服务器编译源码安装
- rn 加载gif图片