hdu 1501 基本搜索深搜
2024-09-30 11:40:39
#include<stdio.h>
#include<string.h>
char s1[300],s2[300],s[500];
int len1,len2,len3,flag,used[300][300];
void dfs(int a,int b,int c) {
if(flag)
return ;
if(c==len3) {
flag=1;
return ;
}
if(used[a][b])
return ;
used[a][b]=1;
if(s1[a]==s[c])
dfs(a+1,b,c+1);
if(s2[b]==s[c])
dfs(a,b+1,c+1);
}
int main() {
int t,co=0;
scanf("%d",&t);
while(t--) {
scanf("%s%s%s",s1,s2,s);
len1=strlen(s1);
len2=strlen(s2);
len3=strlen(s);
flag=0;
memset(used,0,sizeof(used));
dfs(0,0,0);
if(flag)
printf("Data set %d: yes\n",++co);
else
printf("Data set %d: no\n",++co);
}
return 0;
}
最新文章
- Linux C 信号 pause、sigsuspend 的相同与区别
- NPOI操作EXCEL(一)——npoi基础
- 第2月第25天 BlocksKit
- 支付宝Wap支付你了解多少?
- Lock的基础概念
- 构建Spark作业
- 从今天开始学习C#啦
- mysql System Tablespace
- Javascript中布尔运算符的高级应用
- mysql的一些使用操作
- mysql一库多表查询主键
- escape、encodeURI和encodeURIComponent的区别及使用
- springboot整合mybaits注解开发
- CentOS7 防火墙(firewall)的操作命令(转)
- [Swift]LeetCode953. 验证外星语词典 | Verifying an Alien Dictionary
- Nginx服务器中的Socket切分,需要的朋友可以参考下
- 转://云和恩墨的两道Oracle面试题
- nodejs图片处理工具gm用法
- 按位与(&;)和按位或(|)
- 开源项目初涉(C++自我学习开始)