题意:

      给你三个字符串,问你前两个能不能拼成第三个串。

思路:

      直接记忆化神搜就行,思路水,看下代码就知道了。这个题目我感觉最大公共子序列dp的作法是错的,虽然有人ac了,随便一组数据比如 abc abc abccba。


#include<stdio.h>
#include<string.h>

char
c1[222] ,c2[222] ,c3[444];
int
mark[222][222];
int
ok ,l1 ,l2 ,l3; void DFS(int n1 ,int n2 ,int n3)
{
if(
n3 == l3 + 1)
{

ok = 1;
return ;
}
if(
mark[n1][n2]) return;
mark[n1][n2] = 1;
if(
n1 <= l1 && c3[n3] == c1[n1] && !ok)
{

DFS(n1 + 1 ,n2 ,n3 + 1);
} if(
n2 <= l2 && c3[n3] == c2[n2] && !ok)
{

DFS(n1 ,n2 + 1 ,n3 + 1);
}
} int main ()
{
int
t ,cas = 1;
scanf("%d" ,&t);
while(
t--)
{

scanf("%s %s %s" ,c1 ,c2 ,c3);
l1 = strlen(c1) - 1;
l2 = strlen(c2) - 1;
l3 = strlen(c3) - 1;
if(
l1 + 1 + l2 + 1 != l3 + 1)
{

printf("Data set %d: no\n" ,cas ++);
continue;
}

ok = 0;
memset(mark ,0 ,sizeof(mark));
DFS(0 ,0 ,0);
if(
ok) printf("Data set %d: yes\n" ,cas ++);
else
printf("Data set %d: no\n" ,cas ++);
}
return
0;
}

hdu1501 记忆化搜索的更多相关文章

  1. hdu1501 记忆化搜索。。。

    Problem Description Given three strings, you are to determine whether the third string can be formed ...

  2. [ACM_动态规划] 数字三角形(数塔)_递推_记忆化搜索

    1.直接用递归函数计算状态转移方程,效率十分低下,可以考虑用递推方法,其实就是“正着推导,逆着计算” #include<iostream> #include<algorithm> ...

  3. 【BZOJ-3895】取石子 记忆化搜索 + 博弈

    3895: 取石子 Time Limit: 1 Sec  Memory Limit: 512 MBSubmit: 263  Solved: 127[Submit][Status][Discuss] D ...

  4. hdu3555 Bomb (记忆化搜索 数位DP)

    http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory ...

  5. zoj 3644(dp + 记忆化搜索)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4834 思路:dp[i][j]表示当前节点在i,分数为j的路径条数,从 ...

  6. loj 1044(dp+记忆化搜索)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=26764 思路:dp[pos]表示0-pos这段字符串最少分割的回文 ...

  7. DP(记忆化搜索) + AC自动机 LA 4126 Password Suspects

    题目传送门 题意:训练指南P250 分析:DFS记忆化搜索,范围或者说是图是已知的字串构成的自动机图,那么用 | (1 << i)表示包含第i个字串,如果长度为len,且st == (1 ...

  8. HDU1978 记忆化搜索

    How many ways Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  9. bzoj4562: [Haoi2016]食物链--记忆化搜索

    这道题其实比较水,半个小时AC= =对于我这样的渣渣来说真是极大的鼓舞 题目大意:给出一个有向图,求入度为0的点到出度为0的点一共有多少条路 从入读为零的点进行记忆化搜索,搜到出度为零的点返回1 所有 ...

随机推荐

  1. 微信小程序和H5之间相互跳转

    1.微信小程序跳转小程序 wx.navigateToMiniProgram <script src='https://res.wx.qq.com/open/js/jweixin-1.3.0.js ...

  2. vue打开新窗口并且实现传参,有图有真相

    我要实现的功能是打开一个新窗口用来展示新页面,而且需要传参数,并且参数不能显示在地址栏里面,而且当我刷新页面的时候,传过来的参数不能丢失,要一直存在,除非我手动关闭这个新窗口,即浏览器的标签页. 通过 ...

  3. 【HTB系列】 Lame

    出品|MS08067实验室(www.ms08067.com) 本文作者:shavchen 01 前言 这次挑战的靶机是Lame,距今900天+,历史感十足 靶机描述 Lame is a beginne ...

  4. R绘图(3): 散点图添加文本注释

    这里以火山图为例进行说明,在转录组分析中,火山图是很常见的一类图,纵轴表示p_value,横轴表示log (fold change).单一的散点图绘制很简单,火山图比较难处理的地方就是一些基因的注释, ...

  5. 代码审查:从 ArrayList 说线程安全

    本文从代码审查过程中发现的一个 ArrayList 相关的「线程安全」问题出发,来剖析和理解线程安全. 案例分析 前两天在代码 Review 的过程中,看到有小伙伴用了类似以下的写法: List< ...

  6. Windows下的Linux子系统

    强调!!!必须是Windows专业版!!! 一.安装运行过程 第一步:打开开发人员模式 第二步:进入 '控制面板 '--'程序'--'启用的Windows功能'--勾选Linux子系统(根据提示进行重 ...

  7. python多线程参考文章

    1. https://www.jianshu.com/p/c93e630d8089 2.https://www.runoob.com/python/python-multithreading.html ...

  8. python-3-2

    一 切片 1.切片是list取值的一种方式 列子: nums = ['a','b','c','d','e','f','h','g','k','l','kk','nn','ee'] 取b和c元素出来 p ...

  9. C语言可变参函数分析

    code[class*="language-"], pre[class*="language-"] { color: rgba(51, 51, 51, 1); ...

  10. ABP 适用性改造 - 精简 ABP CLI 生成的项目结构

    Overview 不管是公司或者个人都会有不同的开发习惯,通过建立项目模板,既可以使开发人员聚焦于业务功能的开发,也可以在一定程度上统一不同开发人员之间的开发风格.在使用 ABP 框架的过程中,对于 ...