20分求助

P1079 [NOIP2012 提高组] Vigenère 密码

把这一改再把那一改,不就好了吗?
by 薄荷蓝少年 @ 2022-08-09 20:38:25


``` //A了!! #include<bits/stdc++.h> using namespace std; string k; int lenk,lenn,flag[1005],x,j; string need,final; int main() { cin>>k; cin>>need; lenn=need.size(); lenk=k.size(); 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; } ```
by ljs150 @ 2022-08-09 20:53:45


|