三维的与二维大同小异,看代码。

#include<cstdio>
#include<cstring>
#include<algorithm>
#define REP(i, a, b) for(int i = (a); i < (b); i++)
using namespace std; const int MAXN = 112;
char a[MAXN], b[MAXN], c[MAXN];
int f[MAXN][MAXN][MAXN], path[MAXN][MAXN][MAXN]; void print(int x, int y, int z)
{
int t = path[x][y][z];
if(t == 1)
{
print(x - 1, y - 1, z - 1);
putchar(a[x]);
}
else if(t == 2) print(x - 1, y, z);
else if(t == 3) print(x, y - 1, z);
else if(t == 4) print(x, y, z - 1);
} int main()
{
scanf("%s%s%s", a + 1, b + 1, c + 1);
int lena = strlen(a + 1), lenb = strlen(b + 1), lenc = strlen(c + 1); REP(i, 1, lena + 1)
REP(j, 1, lenb + 1)
REP(k, 1, lenc + 1)
{
if(a[i] == b[j] && b[j] == c[k])
{
f[i][j][k] = f[i-1][j-1][k-1] + 1;
path[i][j][k] = 1;
}
else
{
f[i][j][k] = max(f[i-1][j][k], max(f[i][j-1][k], f[i][j][k-1]));
if(f[i][j][k] == f[i-1][j][k]) path[i][j][k] = 2;
if(f[i][j][k] == f[i][j-1][k]) path[i][j][k] = 3;
if(f[i][j][k] == f[i][j][k-1]) path[i][j][k] = 4;
}
}
printf("%d\n", f[lena][lenb][lenc]);
print(lena, lenb, lenc); return 0;
}

最新文章

  1. HTML 最简单的tips 怎么支持指定DIV显示提示信息
  2. next_permutation函数
  3. java经典算法40题(21-40)
  4. mousewheel 模拟滚动
  5. mongodb 常见操作转
  6. 201521123026 《Java程序设计》第一周学习总结
  7. python_如何在循环引用中管理内存?
  8. 编写一个js函数,该函数有一个n(数字类型),其返回值是一个数组,该数组内是n个随机且不重复的整数,且整数取值范围是[2,32]
  9. 从安装Mac OS X虚拟机到第一个IOS程序
  10. CSS3之实现光润效果
  11. ApplicaitionContext妙用request解耦合
  12. 微信小程序用setData给数组对象赋值
  13. 面试回顾——List&lt;T&gt;排序
  14. Java_io体系之RandomAccessFile简介、走进源码及示例——20
  15. canal 入门
  16. c# devexpress 多个窗口
  17. 设计模式之策略模式&amp;amp;简单工厂模式
  18. 消息 8101,级别 16,状态 1,第 1 行 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表&#39;ResourceInfo&#39;中的标识列指定显式值。
  19. Java JDK5新特性-泛型
  20. 在ant编译java文件时产生debug信息

热门文章

  1. RocketMQ学习笔记(3)----RocketMQ物理结构和逻辑部署结构
  2. SpringCloud学习笔记(12)----Spring Cloud Netflix之Hystrix断路器的流程和原理
  3. [转载]PyCharm创建.py自动添加文件头注释
  4. redis做成windows服务
  5. c++PrimerChap7类
  6. caioj 1152 快速求模 (快速幂)
  7. Adobe AIR and Flex - 保存序列化对象文件(译)
  8. How to customize Skin Gallery - Remove / rename skins and groups
  9. bzoj1050【HAOI2006】旅行comf
  10. Leetcode:Singel Number