……这个在线测试赛后不可练习,题目也看不了了,但是代码我都好好的留下来了
先上提交记录:
之后从前往后复述题意,写题解吧。
本文地址:http://blog.csdn.net/fcxxzux/article/details/51931463
Problem A - Alphabet Replacement
题意:给你2个长度相等的,由小写字母组成的字符串。现在允许你做一个操作:把2个字符串中出现的字符A换成字符B(允许自己换成自己,2个字符串里出现的字符A都要被替换),问有没有一种替换方案,使得替换后2个字符串完全一样?
比如,输入:
ababcd
babacd
输出Yes,因为可以通过把a换成b,使得2个字符串都变成bbbbcd。
——英文题面描述的题意有毒,当搞懂正确题意后,还是很白送的:暴力枚举所有替换方案,并检查
也就26*26*length,这里length还只有100,直接交。
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
#include <limits.h>
#include <math.h>
#include <algorithm>
using namespace std;
typedef long long ll;
char sa[105],sb[105];
int len;
char change(char x,char s,char g){
return x==s?g:x;
}
bool check(char src,char goal){
for(int i=0;i<len;i++){
if(change(sa[i],src,goal)!=change(sb[i],src,goal))return false;
}
return true;
}
int main(){
scanf("%s%s",sa,sb);
len=strlen(sa);
for(char a='a';a<='z';a++){
for(char b='a';b<='z';b++){
if(check(a,b)){
puts("Possible");
return 0;
}
}
}
puts("Impossible");
return 0;
}
Problem B - Marathon Runners
2个人Takahashi和Aoki站在起跑线上。已知:
1、发令枪响后,Takahas