20分求助
查看原帖
20分求助
383293
ljs150楼主2022/8/9 20:34
#include<bits/stdc++.h>
using namespace std;
char k[105],lenk;
char need[1005],lenn,final[1005],x,flag[1005];
int j;
int main()
{
    gets(k);
    gets(need);
    lenk=strlen(k);
    lenn=strlen(need);
    for(int i=0;i<lenk;i++)
    {
        if(k[i-x*lenk]>'Z')
        {
            k[i-x*lenk]-=32;
        }
    }
    for(int i=0;i<lenn;i++)
    {
        if(i>=(x+1)*lenk)
        {
            x++;
        }
        if(need[i]>'a'-1)
        {
            need[i]-=32;
        }
        else
        {
        	flag[i]=1;
		}
        j=k[i-x*lenk]-'A';
        final[i]=need[i]-j;
    }
     for(int i=0;i<lenn;i++)
    {
        if(final[i]<'A')
        {
            final[i]=final[i]+26;
        }
    }
    for(int i=0;i<lenn;i++)
    {
        if(flag[i]==1)
        {
            final[i]=final[i]-32;
        }
    }
    for(int i=0;i<lenn;i++)
    {
        printf("%c",final[i]+32);
    }
    return 0;
}
2022/8/9 20:34
加载中...