怪盗基德的挑战书
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)
Total Submission(s): 1695 Accepted Submission(s): 809

Problem Description
  “在树最美丽的那天,当时间老人再次把大钟平均分开时,我会降临在灯火之城的金字塔前,带走那最珍贵的笑容。”这是怪盗基德盗取巴黎卢浮宫的《蒙娜丽莎的微笑》这幅画时,挑战书上的内容。
  但这次,怪盗基德的挑战书上出现了一串串小写字母“aaab sdfeeddd…”。柯南以小学生的眼睛,超凡高中生的头脑,快速统计各种字母频率,字符串长度,并结合挑战书出现的时间等信息,试图分析怪盗基德的意图。最后,他将线索锁定在字符串的循环次数上。并且进一步推理发现,从字符串的第一位开始,到第i位,形成该字符串的子串(c1, c2, c3 … ci )。对于某一子串ci在该字符串中出现的次数记为ki,则全部子串的循环次数总和AIM = k1 + k2 + … + ki + … + kn,柯南发现,AIM恰好对应一个ASCII码!所以,只要把挑战书上的字符串转变成数字,再找到对应的ASCII码,就可以破解这份挑战书了!
  现在,你的任务就是把字符串转变成对应数字,因为ASCII码以及扩展ASCII码全部只有256个,所以,本题只要把结果对256取余即可。

Input
输入有多组测试数据;
每组测试数据只有一个字符串,由各种小写字母组成,中间无空格。
字符串的长度为L(0 < L <= 100000)。

Output
请计算并输出字符串的AIM值,每组数据输出一行。

Sample Input
aaa
abab

Sample Output
6
6

Source
2013金山西山居创意游戏程序挑战赛——初赛(3)

问题链接:HDU4552 怪盗基德的挑战书
问题简述:(略)
问题分析:文本处理问题,看程序代码,不解释。
程序说明:(略)
参考链接:(略)
题记:(略)

AC的C++语言程序如下:

/* HDU4552 怪盗基德的挑战书 */#include <bits/stdc++.h>using namespace std;const int N = 256;
const int L = 100000;
char s[L + 1];int main()
{while(gets(s)) {int ans = 0;for(int i = 0; s[i]; i++) {int j, k;for(j = 0, k = i; s[j]; j++, k++)if(s[j] != s[k]) break;ans += j;}printf("%d\n", ans % N);}return 0;
}

HDU4552 怪盗基德的挑战书【文本处理】相关推荐

  1. KMP——怪盗基德的挑战书(hdu4552)

    首先是KMP介绍: 主串:a b a c a a b a c a b a c a b a a b b,下文中我们称作T 模式串:a b a c a b,下文中我们称作W 在暴力字符串匹配过程中,我们会 ...

  2. HDU - 4552 怪盗基德的挑战书(后缀数组+RMQ/KMP+dp)

    题目链接:点击查看 题目大意:给出一个字符串,统计每个前缀在字符串中出现的次数之和 题目分析:可以直接先用后缀数组跑出来height,再用RMQ跑出来任意两个后缀的height,我们可以将题意转换为求 ...

  3. java sqlexception_Java报SQLException

    远程连接服务器for Linux 远程连接Linux云服务器-命令行模式 1.远程连接工具.目前Linux远程连接工具有很多种,您可以选择顺手的工具使用.下面使用的是名为Putty的Linux远程连接 ...

  4. java发送简单邮件_Java程序实现发送简单文本邮件

    /** * Java程序实现发送简单文本邮件 * * @author Administrator * */ public class SendTextMail { // 定义发件人地址 public  ...

  5. Redis 笔记(11)— 文本协议 RESP(单行、多行字符串、整数、错误、数组、空值、空串格式、telnet 登录 redis)

    RESP 是 Redis 序列化协议Redis Serialization Protocol 的简写.它是一种直观的文本协议,优势在于实现异常简单,解析性能极好. ​ Redis 协议将传输的结构数据 ...

  6. python二进制打开(rb)和文本格式打开(r)什么区别?

    使用 open() 函数以文本格式打开文件和以二进制格式打开文件,唯一的区别是对文件中换行符的处理不同. 在 Windows 系统中,文件中用 "\r\n" 作为行末标识符(即换行 ...

  7. 文本框可编辑查看页面

    <!DOCTYPE html> <html><head><meta charset="utf-8" /><title>文 ...

  8. 如何用python读取文本中指定行的内容

    如何用python读取文本中指定行的内容 搜索资料 我来答 分享 新浪微博 QQ空间 浏览 5284 次 查看全文 http://www.taodudu.cc/news/show-64036.ht ...

  9. python codecs.open()及文件操作-文本处理 with open

    20210810 以二进制并追加的形式写入文件 20210731 f.write('\n') 换行写入 20210625 https://blog.csdn.net/a543402496/articl ...

最新文章

  1. react-redux的Provider和connect
  2. RDKit:化合物相似性搜索
  3. Windows下Memcached的安装与配置
  4. 程序设计中的几种设计原则
  5. PHP面试题:请以空格作为间隔,拆分字符串’Apple Orange Banana Strawberry’,组成数组$fruit,
  6. hdu 5521 Meeting(最短路)
  7. WPF Application 类介绍以及怎样修改启动方式
  8. php分享二十四:数组
  9. LeetCode: Maximum Subarray 解题报告
  10. leetcode -- Clone Graph
  11. oracle 密码管理,【转载】Oracle密码管理五大要点(一)
  12. 屏幕录像大师如何把LXE文件转换为EXE文件
  13. 手动以及使用torch.nn实现前馈神经网络实验
  14. 【问题】 form action=${pageContext.request.contextPath}/login.action
  15. inflect java_在native线程利用JNI 反射自定义类
  16. Python通过m3u8文件下载合并ts视频
  17. 手持设备的可用性研究
  18. javascript查找并输出英语文章出现最多次数单词,和英语字符中出现最多字母
  19. WY-35A4电压继电器
  20. CT数据将.nii格式或.nii.gz格式转换为dcm格式

热门文章

  1. pdsh命令控制多台树莓派超爽
  2. 【我的相册】北方的传统面艺
  3. 多线程写图像文件的一点小测试
  4. SQL那些事儿(九)--oracle数据库知识体系
  5. 作为开发者不应该畏惧的8件事
  6. y700支持m2硬盘_两块硬盘一起读写?奥睿科M.2 NVMe双盘位固态硬盘盒使用
  7. word如何设置上标形式_如何在word里设置删除线、添加着重号、上标和下标?戳这里...
  8. 力扣-图解算法数据结构-剑指 Offer 05. 替换空格
  9. 每天Leetcode 刷题 初级算法篇-缺失数字
  10. 大数据学习之Hadoop任务输出到多个目录中