现在的位置: 首页 > 综合 > 正文

hdu 4545 西山居一 魔法串

2013年08月28日 ⁄ 综合 ⁄ 共 600字 ⁄ 字号 评论关闭

题目 http://acm.hdu.edu.cn/showproblem.php?pid=4545

这个题目刚开始没有做出来  很纠结哦   做错了

后面参考了一下别人代码写出来的  发现很简单哦 只是我当时太笨了  呵呵   要注意一个地方 就是第一次输入的时候不要while(cin>>n)否则会出错哦

具体看代码

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;

char s1[1010],s2[1010];
int mat[30][30];

int main()
{
    int i,t,h,m;
    char a,b;
    cin>>t;

    for(h=1;h<=t;h++)
    {

        cin>>s1>>s2;

        memset(mat,0,sizeof(mat));

        for(i=0;i<26;i++) mat[i][i]=1;

        cin>>m;

        for(i=1;i<=m;i++)
        {
            cin>>a>>b;
            mat[a-'a'][b-'a']=1;
        }

        m=0;
        for(i=0;s2[i];i++)
        {
            if(!s1[m]) break;
            if(mat[s2[i]-'a'][s1[m]-'a']) m++;
        }

        if(!s1[m]){cout<<"Case #"<<h<<": happy"<<endl;}
        else cout<<"Case #"<<h<<": unhappy"<<endl;
     }
    return 0;
}

 

 

抱歉!评论已关闭.