Untitled

 avatar
unknown
c_cpp
2 years ago
969 B
3
Indexable
#include <stdio.h>
#include <string.h>
int main(){
    //id[]存type == 2 時要更換位置的id
    char s[1000005], a[100005], b[100005], alp[26];
    int q, type[100005], id[100005] = {0};
    scanf("%s", s);
    int n = strlen(s);
    scanf("%d", &q);
    for(int i = 0; i < 26; i++){
        alp[i] = i + 'a';
    }
    for(int i = 0; i < q; i++){
        scanf("%d", &type[i]);
        if(type[i] == 1){
            scanf(" %c %c", &a[i], &b[i]);
        }
        else{
            scanf("%d %c", &id[i], &b[i]);
            s[ id[i] ] = b[i];
        }
    }
    for(int i = q - 1; i >= 0; i--){
        if(type[i] == 2){
            s[ id[i] ] = alp[ s[ id[i] ] - 'a'];
            //printf("\n%c\n", s[id[i]]);
        }
        else{
            alp[ a[i] - 'a' ] = alp[ b[i] - 'a'];
        }
    }
    for(int i = 0; i < n; i++){
        if() continue;
        s[i] = alp[ s[i] - 'a' ];
    }
    printf("%s\n", s);
}
Editor is loading...