很基础的一道题,注意一下负数取模就行了,i太大的时候偶数会变成负数,我就因为这个WA了几发
懂原理的话就变得很简单了,下面给出我的13行无压行代码

#include<bits/stdc++.h>
using namespace std;
char s[100005];
int main(){
    int n;
    cin>>n;
    cin>>s+1;
    for (int i = 1; i <=n; ++i) {
        if(i&1) s[i]=(s[i]-97+i)%26+97;
        else    s[i]=((s[i]-97-i)%26+26)%26+97;
    }
    puts(s+1);
}

不需要多解释了吧。。把这个看成一个环就行了,比较基础的题。