站外题求助,玄关
  • 板块灌水区
  • 楼主DJWOI
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/5/4 09:02
  • 上次更新2024/5/4 10:48:23
查看原帖
站外题求助,玄关
1296148
DJWOI楼主2024/5/4 09:02

orz各位大佬,给个思路也行,代码的话两关

题目背景

A国情报中心正在研究如何破解收到的密文,科学家们首先需要找出有规律的线索。

密文是一个字符串,由大小写字符、数字、问号组成,问号'?'是在信息接收过程收到了噪音干扰,可看成是任意一个大小写字符或数字。

科学家把形如大小写字符 + 数字 + 大小写字符形状的子字符串称之为线索, 例如"ABC123ddef"。

现在请你先帮助科学家计算一下,密文里一共有多少个线索,对 109+710^9+7 求余。

线索的规则:

一个子串两边是连续大小写字符段,中间是连续数字段,就成为一个线索 一个相同的线索,但子串位置不同,也称为两个线索 问号'?'可以看成是大小写或数字,比如A1?b即可看成以下三类:

A1(0..9)b,共10个

A1(a..z)b,共26+26=52个

A1(A..Z)b,共26+26=52个

于是A1?b一共有114个线索。

输入输出格式

输入格式:

第一行n,表示密文长度 第二行n个字符组成的密文

输出格式:

一个数字,表示密文里形如大小写+数字+大小写形态的线索数量

输入输出样例

输入样例1:

8 ab12cc3d

输出样例1:

6 样例1说明:ab12c, ab12cc, b12c, b12cc, cc3d, c3d,一共6个线索。

输入样例2:

4 A1?b 输出样例2:

114 样例2说明,见题目描述部分。

输入样例3:

3 ??? 输出样例3:

27040 样例3说明:位置1、3都有52种可能(大小写),位置2有10种可能(数字)。

输入样例4:

4 ???? 输出样例4:

3136640 测试点 测试点:5个测试点,每个测试点得20分。

测试限制:每个测试点时间限制1s,内存限制128M。

数据范围:

样例1-2:1<=n<=20

样例3-4:1<=n<=300, 没有问号

样例5-6:1<=n<=5000, 没有问号

样例7-8:1<=n<=100

样例9-10:1<=n<= 2×1052\times10^5

2024/5/4 09:02
加载中...