uva310

题目大意:

有四个字符串,第三个字符串出现a的地方用第一个字符串替代,出现b的地方用第二个字符串替代,然后判断在新串中是否可以找到目标字串(第四个字符串),如果可以找到的话就输出YES,否则输出no。

思路:
本来就是想说先将新串给存在一个string中然后用string的find函数查找字串,可是wa了。。

include

using namespace std;

include

include

string a,b,c,d,e;
bool flag;
int main() {

int i;
while(cin >> a) {
//  memset(a,'\0',sizeof(a));
//  scanf("%s",&a[1]);
//  scanf("%s",&a[2]);
//  scanf("%s",&a[3]);
//  cout << 1<<endl;

// cin >> a;
cin >> b;
cin >> c;
cin >> d;
e = “”;
// printf(“1”);
// cout << b <

AC代码思路:
    开始的串如果大于目标串的长度的话也需要判断,可能开始的串中就包含了目标字串。
    用队列保存已经替换过的串,如果找到目标就停止。否则就循环进行。
AC代码:

include

include

include

include

using namespace std;
string a;
string b;
string beg;
string target;
string s,s1;
bool ok;
queue q;
map

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值