【字符串处理】UVALive
来源:互联网 发布:中航期货软件 编辑:程序博客网 时间:2024/05/22 03:39
Problem Description
给你T组数据,每组数据先给你一个串,只包含大写字母或者下划线。给你m组操作,每组操作有u, v两个大写字母,就是将串里面的所有字母v变成字母u
思路:把B变成A, 把A变成C,就相当于把 B变成C。那一个数组来存最后该字母变成那个字母
#include<bits/stdc++.h>using namespace std;char s[1000055];int main(){ int T, m; char c1[2], c2[2]; int flag[30];//用来存,最后该字母变成那个字母 scanf("%d", &T); while(T--) { scanf("%s", s); for(int i = 0; i <= 26; i++)//初始化 flag[i] = i; scanf("%d", &m); while(m--) { scanf("%s %s", c1, c2); int u = c1[0] - 'A';//转换成整数 int v = c2[0] - 'A'; for(int i = 0; i <= 25; i++)//核心 { if(flag[i] == v)//原本flag[i]是字母v,现在让他变成字母u { flag[i] = u; } } } int len = strlen(s); for(int i = 0; i < len; i++) { if(s[i] >= 'A' && s[i] <= 'Z')//如果是大写字母 { int t = s[i] - 'A'; printf("%c", flag[t] + 'A');//输出变后结果 } else printf("%c", s[i]); } printf("\n"); } return 0;}
阅读全文
0 0
- 【字符串处理】UVALive
- UVALive 6085|Chemistry|字符串处理
- UVALive 4174 Steganography 字符串处理 密码学
- UVALive - 4882 Parenthesis 表达式处理、字符串处理、栈
- UVALive 7370--字符串排序
- uvalive 5734 字符串最小表示法
- UVALive 2755 Hidden Password(字符串最小表示)
- UvaLive 6439 Pasti Pas! 字符串哈希
- UVALive 4167 Parity (字符串水)
- Uvalive 4513 Stammering Aliens(字符串Hash)
- UVALive
- UVALive
- UVALive
- UVALive
- UVALive
- UVALive
- UVALive
- UVALive
- PCA数学原理及编程实现
- (三)JNI学习之C语言基础,指针
- PAT 乙级 1017.A除以B(20)
- MaterialCalendarView日历控件的使用小结
- Mysql Case 函数 用法
- 【字符串处理】UVALive
- 面向对象工具——String类
- 惟伊集团公司简介及办公环境展示
- 标准程序的Parameter id 并不一定准确
- CSS预编译与PostCSS以及Webpack构建CSS综合方案
- matlab legend字号改变——matlab论坛
- 项目管理学习总结(5)——产品开发过程中各角色职责说明和技能要求
- 面向切面编程(AOP)
- java-有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?