Kyoya and Photobooks

Description
Kyoya Ootori is selling photobooks of the Ouran High School Host Club. He has 26 photos, labeled “a” to “z”, and he has compiled them into a photo booklet with some photos in some order (possibly with some photos being duplicated). A photo booklet can be described as a string of lowercase letters, consisting of the photos in the booklet in order. He now wants to sell some “special edition” photobooks, each with one extra photo inserted anywhere in the book. He wants to make as many distinct photobooks as possible, so he can make more money. He asks Haruhi, how many distinct photobooks can he make by inserting one extra photo into the photobook he already has?

Please help Haruhi solve this problem.

Input
The first line of input will be a single string s (1 ≤ |s| ≤ 20). String s consists only of lowercase English letters.

Output
Output a single integer equal to the number of distinct photobooks Kyoya Ootori can make.

Examples
Input
a
Output
51
Input
hi
Output
76
Note
In the first case, we can make ‘ab’,‘ac’,…,‘az’,‘ba’,‘ca’,…,‘za’, and ‘aa’, producing a total of 51 distinct photo booklets.
原串长度为L,则共有L + 1个位置可以插入,每个位置可以有26种插法,共26*(L + 1)种。但注意相邻两个空位插入同为位于这两个相邻空位中间的字母,构造出的新串是一样的,所以答案要减去L,于是最后答案为25*L + 26

C语言版本一

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	char s[25];
	scanf("%s",&s);
	printf("%d\n",26*(strlen(s)+1)-strlen(s)) ;
	
	
	return 0;
}

C++版本一

#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <algorithm>
#include <stack>
#include <queue>
#include <vector>
#include <map>
#include <set>
using namespace std;
 
int main()
{
    char s[30];
    while(scanf("%s", s) != EOF)
        printf("%d\n", strlen(s)*25 + 26);
    return 0;
}
全部评论

相关推荐

冲芭芭拉鸭:你这图还挺新,偷了。
投递美团等公司10个岗位
点赞 评论 收藏
分享
斑驳不同:还为啥暴躁 假的不骂你骂谁啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务