请教下大佬哪里错了,一直60分过不了

P1914 小书童——凯撒密码

rabbitzph @ 2021-08-23 21:13:57


#include<string>
using namespace std;
int n = 0;
int main(){
    string str;
    cin>>n;
    cin>>str;
    for(int i =0;i<str.size();i++){
        str[i]+=n;
        while(str[i]>122)
        str[i]-=26;

    }
    cout<<str;
    return 0;
}

by cabac @ 2021-08-23 21:25:31

while(str[i]>122)
str[i]-=26;

这个改成这个试试?

if(str[i]>122)
str[i]=str[i]%122+96; 

by rabbitzph @ 2021-08-23 21:40:49

@sqk3_cab 多谢,但是不是这里的问题,我测试出来了,如果改成每次str++,共加n次就没问题了,不知道是因为什么


by rabbitzph @ 2021-08-23 21:41:22

@sqk3_cab 打错了,是str[i]++


|