题目大意:给出的字符串,每个字符建立一种与0-25的对应关系。然后每个字符串看成是一个26进制的数。问能获得的数的总和的最大值。(最后对1e9+7取模)。

题目思考:把每个字符的贡献值看做一个26进制数字,贪心排序后,确保没有前导零。写的要规范点,卡时间。

#include <stdio.h>
#include <string.h>
#include <vector>
#include<math.h>
#include <algorithm>
#include<iostream>
#define INF 0x3f3f3f3f
using namespace std;
const long long mod = +;
const int MAXSIZE = ;
string s[MAXSIZE];
long long var[MAXSIZE];
long long k[MAXSIZE]; struct node
{
int op,id;
int var[MAXSIZE];
bool operator < (const node &a)const
{
for(int i=MAXSIZE-;i>=;i--)
{
if(var[i] != a.var[i])
return var[i] > a.var[i];
}
return ;
}
}p[]; int main()
{
int n,cns=;
while(scanf("%d",&n)!=EOF)
{
for(int i=;i<;i++)
{
p[i].id = i;
p[i].op = ;
for(int j=;j<MAXSIZE;j++)
p[i].var[j]=;
} for(int i=;i<n;i++)
{
cin>>s[i];
int len = s[i].size();
if(len > )
p[s[i][]-'a'].op = ;
for(int j=;j<len;j++)
{
int id = s[i][len-j-] - 'a';
p[id].var[j]++;
}
} for(int i=;i<;i++)
{
for(int j=;j<MAXSIZE;j++)
{
p[i].var[j+] += p[i].var[j]/;
p[i].var[j] = p[i].var[j]%;
}
} sort(p,p+); int v = ;
for(int i=;i<;i++)
var[p[i].id] = v--; int pos = ;
while(pos && p[pos].op)
{
swap(var[p[pos].id],var[p[pos-].id]);
pos--;
} long long ans = ,num; for(int i=;i<n;i++)
{
int len = s[i].size();
num=;
for(int j=;j<len;j++)
{
num = (num* + var[s[i][j]-'a'])%mod;
}
ans = (ans+num)%mod;
}
printf("Case #%d: %lld\n",cns++,ans);
}
return ;
}

6034 Balala Power! (17多校)的更多相关文章

  1. HDU 6034 - Balala Power! | 2017 Multi-University Training Contest 1

    /* HDU 6034 - Balala Power! [ 大数进位,贪心 ] 题意: 给一组字符串(小写英文字母),将上面的字符串考虑成26进制数,每个字母分配一个权值,问这组数字加起来的和最大是多 ...

  2. 2017ACM暑期多校联合训练 - Team 1 1002 HDU 6034 Balala Power! (字符串处理)

    题目链接 Problem Description Talented Mr.Tang has n strings consisting of only lower case characters. He ...

  3. HDU 6034 Balala Power!(贪心+排序)

    Balala Power! Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  4. 2017 Multi-University Training Contest - Team 1 1002&&HDU 6034 Balala Power!【字符串,贪心+排序】

    Balala Power! Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)T ...

  5. hdu 6034 Balala Power!

    Balala Power! Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)T ...

  6. HDU 6034 Balala Power!【排序/进制思维】

    Balala Power![排序/进制思维] Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java ...

  7. HDU 6034 Balala Power! —— Multi-University Training 1

    Talented Mr.Tang has nn strings consisting of only lower case characters. He wants to charge them wi ...

  8. HDU 6034 Balala Power! (贪心+坑题)

    题意:给定一个 n 个字符串,然后问你怎么给 a-z赋值0-25,使得给定的字符串看成26进制得到的和最大,并且不能出现前导0. 析:一个很恶心的题目,细节有点多,首先是思路,给定个字符一个权值,然后 ...

  9. HDU 6034 17多校1 Balala Power!(思维 排序)

    Problem Description Talented Mr.Tang has n strings consisting of only lower case characters. He want ...

随机推荐

  1. H5新增元素

    标签 标记意义及用法分析/示例 属性/属性值/描述 <article> 定义独立的内容,如论坛帖子.报纸文章.博客条目.用户评论等内容. 支持HTML5的全局属性和事件属性. <as ...

  2. day-03(js)

    回顾: css: 层叠样式表 作用: 渲染页面 提供工作效率,将html和样式分离 和html的整合 方式1:内联样式表 通过标签的style属性 <xxx style="...&qu ...

  3. 2017-12-15python全栈9期第二天第七节之布尔值转数字

    #!/user/bin/python# -*- coding:utf-8 -*-print(int(True))print(int(False))

  4. 20165232 2017-2018-2《Java程序设计》结对编程一 第一周总结

    20165232 2017-2018-2<Java程序设计>结对编程一 第一周总结 结对对象 20165219王彦博 20165232何彦达 需求分析 实现一个程序,要求: 1 支持整数运 ...

  5. SQL语法基础之CREATE语句

    SQL语法基础之CREATE语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看帮助信息 1>.使用“?”来查看MySQL命令的帮助信息 mysql> ? CR ...

  6. Flink HA 搭建坑

    目前网上能找到的做HA的教程基本都无法真正做到多机高可用,包括官方文档,经过很久的折腾,终于做到了多机高可用,希望其它人不再被坑. 集群模式安装 前提条件: 机器已经安装好Java环境 jobMana ...

  7. JAVA核心技术I---JAVA基础知识

    一:class类 (一)文件规则 1.Java文件必须以.java作为扩展名 2.一个Java文件只能有一个public class 3.public class的名字必须和文件名字一样,大小写都要完 ...

  8. http 动态路由

    main.go package main import ( "fmt" "http2/comm" "http2/test" "ne ...

  9. 【1】【leetcode-99】 恢复二叉搜索树

    (没思路) 99. 恢复二叉搜索树 二叉搜索树中的两个节点被错误地交换. 请在不改变其结构的情况下,恢复这棵树. 示例 1: 输入: [1,3,null,null,2]   1   /  3   \ ...

  10. Sliverlight常见错误集锦

    1. 使用GridSplitter时候(参考),出现如下错误 C# 中的错误Error 2 The type 'sp:GridSplitter' was not found. Verify…… 对程序 ...