zoukankan      html  css  js  c++  java
  • 字符替换

    Description

     

    给定一个字符串,其长度为n。接下来对这个字符串进行m次操作,每次操作都有两个字符x和y,请将该字符串中的x字符换为y字符,

    将该字符串中的y字符换为x字符。请你输出m次操作后的字符串。

    Input

     

    输入第一行为一个n和m。第二行为字符串。接下来有m行,每行有两个字符。

    (1<=n,m<=200000,所有字符都为小写字母)

    Output

     

    输出m次操作后的字符串

    Sample Input 1 

    3 4
    abc
    a a
    b a
    c a
    a c

    Sample Output 1

    bac
    /*
        头晕啊
        知识点:模拟加思维
    */
    #include<bits/stdc++.h>
    using namespace std;
    const int N = 200000+10;
    char ss[N], parent[26];
    int main(){
        int n, m;
        char x[2], y[2];
        scanf("%d%d", &n, &m);
        scanf("%s", ss);
        for(int i=0; i<26; ++i)parent[i]='a'+i;
        for(int i=0; i<m; ++i){
            scanf("%s%s", x, y);
            for(int i=0; i<26; ++i){
                if(x[0] == y[0])break;
                if(parent[i] == x[0]){
                    parent[i] = y[0];
                    continue;
                }
                if(parent[i] == y[0]){
                    parent[i] = x[0];
                    continue;
                }
            }
        }
        for(int i=0; i<n; ++i)printf("%c", parent[ss[i]-'a']);
        printf("
    ");
        return 0;
    }
    

      方向错了   再怎么想都没用 ~~~~~~

  • 相关阅读:
    JAVA 读取excel文件成List<Entity>
    JAVA 下载单个文件
    js替换指定位置字符串
    Java学习——继承
    Java——单例设计模式
    Java学习——static关键字
    个人成长阶段
    Android_xml背景色的值
    Android开发_关于点击事件
    Android开发_关于中英文切换
  • 原文地址:https://www.cnblogs.com/liuzhaojun/p/12058554.html
Copyright © 2011-2022 走看看