首页 > 试题广场 >

游戏海报

[编程题]游戏海报
  • 热度指数:9934 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
小明有 26 种游戏海报,用小写字母 "a" 到 "z" 表示。小明会把游戏海报装订成册(可能有重复的海报),册子可以用一个字符串来表示,每个字符就表示对应的海报,例如 abcdea 。小明现在想做一些“特别版”,然后卖掉。特别版就是会从所有海报(26种)中随机选一张,加入到册子的任意一个位置。
那现在小明手里已经有一种海报册子,再插入一张新的海报后,他一共可以组成多少不同的海报册子呢?

数据范围:输入的字符串长度满足

输入描述:
海报册子的字符串表示


输出描述:
一个整数,表示可以组成的不同的海报册子种类数
示例1

输入

a

输出

51

说明

我们可以组成 'ab','ac',...,'az','ba','ca',...,'za' 还有 'aa', 一共 51 种不同的海报册子。 
头像 牛客题解官
发表于 2020-06-04 14:54:02
精华题解 题目难度:1星 考察点:组合数学 方法:组合数学 1. 分析 我们分析一下题意,其实这个题就是求给定一个只包含小写字母的字符串,然后在加入一个新的小写字母,看能够组成多少种不同的字符串?这个题我们可以借助高中时候学习的插空法,假设字符串的长度为n,那么就有n+1个空,每个空都有26种( 展开全文
头像 laglangyue
发表于 2020-05-24 22:30:43
Set集合避免重复,一个字符串插入单个字符,枚举26个字符,复杂度26o(n),然后看评论区,我真是菜啊,排列组合:(字符串长度n+1)26-n重复的次数恰好是字符串长度 import java.util.*; public class Main { public static void 展开全文
头像 牛客289281343号
发表于 2020-04-30 22:29:42
解题思路:字符串的长度n决定了可以插入字符的位置数量,为n+1;因此一共有26(n+1)中插入方式,但是若插入的字符与相邻字符一样,则插入字符的左右不同位置输出的字符串是一样的,比如abb与abb,因此要减去这种重复的情况,即减去字符串的长度n。import java.util.;public cl 展开全文
头像 牛客444857323号
发表于 2023-08-16 18:00:13
import sys n = str(input()) l = [chr(i) for i in range(97,123)] num = (len(n)+1)*len(l)-len(n) print(num)
头像 郭富成
发表于 2022-02-18 20:15:19
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; /** * @ClassName Main * @Description * @Author fuche 展开全文
头像 鼠鼠我呀要失业了捏
发表于 2022-09-03 15:36:12
//每个字符串前后都能插s.length()-1个位置 //如果某个字符前或后插入的是本身则一样所以减去这种情况即可 // import java.util.Scanner; public class Main {    &nb 展开全文
头像 我不打朋友圈
发表于 2021-12-15 22:00:52
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; public class Main{ public static void main(String[] args) 展开全文
头像 苏觅云
发表于 2022-05-22 21:51:28
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int len = sc 展开全文