hdu 2895 (水)
来源:互联网 发布:msdn win7 优化 编辑:程序博客网 时间:2024/06/07 16:50
点击打开链接
给你两个字符串,要求用最少的步骤将串1变位串2
a # 将字符#加入串2中
d # 删除字串1中的一个字符
m # 删除串1中一个字符并将#加入2中
实际上产生距离的就只有add 和 delete,因为modify是不算距离的,那么两个字符串之间的最小编辑距离就一定是他们之间的长度差,可以先通过add或者delete,然后再通过modify完成,题目最后还要求排序,其实,就是要保证这种方法。
举两个例子吧
abcde和xabzdey 长度差为2,那么先add x, a, 然后modify b, z, d, e, y
xabzdey和abcde 长度差为2, 那么先delete x, a, 然后modify a, b, c, d, e
#include"stdio.h"#include"string.h"#define N 10005int main(){int i;int l1,l2;char s1[N];char s2[N];while(gets(s1)){gets(s2);l1=strlen(s1);l2=strlen(s2);if(l1<l2){i=0;while(l2-i!=l1)printf("a %c\n",s2[i++]);while(i<l2)printf("m %c\n",s2[i++]);}else {i=0;while(l1-i!=l2)printf("d %c\n",s1[i++]);i=0;while(i<l2)printf("m %c\n",s2[i++]);}}return 0;}
- hdu 2895 (水)
- HDU 2109 Fighting for HDU(水~)
- hdu 2537(水)
- hdu 3346 (水)
- hdu .3343 (水)
- hdu 2156(水)
- hdu 2140 (水)
- hdu 3189 (水)
- hdu 3188 (水)
- hdu 2817 (水)
- hdu 4154 (水)
- hdu 1214 (水)
- hdu 1152 (水)
- hdu 4500 (水)
- hdu 4519(水)
- hdu 1038(水)
- hdu 1046 (水)
- hdu 1050 (水)
- 容斥原理应用(求1~r中有多少个数与n互素)
- mysql pod 插入 乱码的解决方案
- 排序算法(个人总结)
- 05-php中的全局变量和静态变量
- hdu 4635 Strongly connected (tarjan强连通分量)
- hdu 2895 (水)
- C语言文件输入/输出 ACM改进版(用freopen函数方便检验)
- 浅析.NET
- c tips 待续、、、
- 正则表达式基础知识
- JS图片上传预览
- java学习笔记(一)
- 字节对齐重写malloc 和 free
- poj 1958 Strange Towers of Hanoi