题解:UVA13026 Search the Khoj
__owowow__
·
·
题解
UVA13026 Search the Khoj 题解
洛谷传送门
UVA传送门
题目大意
第一行输入一个整数 n。后面 n 行,每行一个号码,同一组数据里的号码位数相同,每组数据最后再输入一个号码,输出前 n 个号码中与最后一个号码相差不超过一个字符的所有号码。
有 T 组数据。
题目思路
需要按照题目要求判断两个号码是否相似。设最后输入的字符串为 s,前面第 i 个输入的字符串为 a_i。设计数器 ans。则我们对比第
判断函数:
```cpp
bool pd(string x,string y){//判断
int b=0;
for(int i=0;i<x.size();i++){
if(x[i]!=y[i]) b++;
}
return b<2;
}
```
### AC Code
```cpp
#include<bits/stdc++.h>
using namespace std;
int n,t;
string a[200],s;
bool pd(string x,string y){//判断
int b=0;
for(int i=0;i<x.size();i++){
if(x[i]!=y[i]) b++;
}
return b<2;
}
signed main(){
cin>>t;
for(int i=1;i<=t;i++){//多组数据
cin>>n;
for(int j=1;j<=n;j++) cin>>a[j];
cin>>s;
printf("Case %d:\n",i);
for(int j=1;j<=n;j++){
if(pd(s,a[j])) cout<<a[j]<<endl;//输出
}
}
return 0;//华丽结束
}
```