首页 > 其他分享 >CodeForces 709C Letters Cyclic Shift

CodeForces 709C Letters Cyclic Shift

时间:2022-10-18 14:33:32浏览次数:43  
标签:Letters Cyclic int Shift len char && letters include

C. Letters Cyclic Shift

time limit per test

memory limit per test

input

output
s consisting of lowercase English letters. You have to pick exactly
one non-empty substring of s and shift all its letters 'z'
'y'
'x'
'b'
'a'
'z'.
In other words, each character is replaced with the previous character of English alphabet and 'a' is replaced with 'z'.
s

Input
s (1 ≤ |s| ≤ 100 000) consisting of lowercase English letters.

Output
s

Examples

input
codeforces
output
bncdenqbdr
input
abacaba
output

aaacaba


#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <algorithm>
#include <string>

using namespace std;
const int maxn=1e5;
char a[maxn+5];
char fun(char x)
{
char b=x;
if(x=='a')
b='z';
else
b--;
return b;
}
int main()
{
scanf("%s",a);
int len=strlen(a);
int l=len-1,r=len-1;
for(int i=0;i<len;i++)
{
if(l==len-1&&a[i]!='a')
l=i;
if(l!=len-1&&r==len-1&&a[i]=='a')
r=i-1;
}
for(int i=0;i<len;i++)
{
if(i<=r&&i>=l)
printf("%c",fun(a[i]));
else
printf("%c",a[i]);

}
printf("\n");
return 0;
}






标签:Letters,Cyclic,int,Shift,len,char,&&,letters,include
From: https://blog.51cto.com/u_15834522/5766678

相关文章