UVA--10066 The Twin Towers

来源:互联网 发布:js点击超链接 编辑:程序博客网 时间:2024/06/04 01:20
<span style="font-size:18px;">#include<stdio.h>#include<string.h>const int Max=100;int str1[Max+10];int str2[Max+10];int maxlen[Max+10][Max+10];int main(){    int cnt=0;    int l1,l2;    while(scanf("%d%d",&l1,&l2)==2){        if(l1==0&&l2==0)            break;        for(int i=0;i<l1;i++)            scanf("%d",&str1[i]);        for(int i=0;i<l2;i++)            scanf("%d",&str2[i]);        cnt++;        for(int i=0;i<=l1;i++)            maxlen[i][0]=0;        for(int i=0;i<=l2;i++)            maxlen[0][i]=0;        for(int i=1;i<=l1;i++){            for(int j=1;j<=l2;j++){                if(str1[i-1]==str2[j-1])                    maxlen[i][j]=maxlen[i-1][j-1]+1;                else if(maxlen[i-1][j]>maxlen[i][j-1])                    maxlen[i][j]=maxlen[i-1][j];                else maxlen[i][j]=maxlen[i][j-1];            }        }        printf("Twin Towers #%d\n",cnt);        printf("Number of Tiles : %d\n\n",maxlen[l1][l2]);    }    return 0;}</span>

0 0
原创粉丝点击