题目意思很明确。。。。。开始用string.find(),就是在第14个测试点wa,然后用了strstr();
#include <iostream>
#include <cstdio>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
char str[100005],str1[100005],str2[100005];
scanf("%s%s%s",str,str1,str2);
int flag1,flag2;
flag1=strstr(str,str1)&&strstr(strstr(str,str1)+strlen(str1),str2);
reverse(str,str+strlen(str));
flag2=strstr(str,str1)&&strstr(strstr(str,str1)+strlen(str1),str2);
if(flag1&&flag2)
cout<<"both\n";
else if(!flag1&&!flag2)
cout<<"fantasy\n";
else if(flag1)
cout<<"forward\n";
else
cout<<"backward\n";
return 0;
}
本文介绍了一个使用 C++ 实现的程序,该程序通过 strstr 函数判断一个字符串是否能在正序和倒序中同时找到两个子串,从而确定其方向性。通过对输入字符串的正反向搜索,程序能够准确地输出字符串的方向特性。
277

被折叠的 条评论
为什么被折叠?



