社区讨论

WA1点觩鲦必关

P1071[NOIP 2009 提高组] 潜伏者参与者 3已保存回复 6

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
6 条
当前快照
1 份
快照标识符
@mj3v2lhp
此快照首次捕获于
2025/12/13 13:34
2 个月前
此快照最后确认于
2025/12/14 22:26
2 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
const int N=300;
string s1,s2;
string s;
char f[N];
/*
字符串1是原来的字符
字符串2是加密的字符


*/
int main(){
    for(int i=0;i<N;i++){
        f[i]='0';
    }
    cin>>s1>>s2>>s;
    int len=s1.size();
    for(int i=0;i<len;i++){
        //如果加密过并且加密前和加密后的字符不相同
        //把s1[i]设置成加密的字符
        f[s1[i]]=s2[i];
        //if(f[s1[i]]!=s2[i]){
            //cout<<"Failed";return 0;
        //}
        
    }bool v[N];
    memset(v,0,sizeof(v));
    for(int i=int('A');i<=int('Z');i++){
        if(v[f[i]]){
            cout<<"Failed";return 0;
        }else{
            v[f[i]]=1;
        }
        /*if(!v[f[i]]){
            v[f[i]]=1;
        }*/
    }
    int x=s.size();
    /*for(int i=0;i<x;i++){
        if(f[s[i]]=='0'){
            cout<<"Failed";
            return 0;
        }
        
    }*/
    for(int i=0;i<x;i++){
        cout<<f[s[i]];
    }
    return 0;
}

回复

6 条回复,欢迎继续交流。

正在加载回复...