HDU 4287 Intelligent IME(哈希)

来源:互联网 发布:suse11 linux iso下载 编辑:程序博客网 时间:2024/06/05 09:58

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4287

#include<stdio.h>#include<string.h>#include<stdlib.h>int hash[1000005];int a[5005];char str[10];int judge(char c){    if('a'<=c&&c<='c')        return 2;    else if('d'<=c&&c<='f')        return 3;    else if('g'<=c&&c<='i')        return 4;    else if('j'<=c&&c<='l')        return 5;    else if('m'<=c&&c<='o')        return 6;    else if('p'<=c&&c<='s')        return 7;    else if('t'<=c&&c<='v')        return 8;    else if('w'<=c&&c<='z')        return 9;}int main(){    int t;    scanf("%d",&t);    while(t--)    {        int n,m;        scanf("%d%d",&n,&m);        for(int i=0; i<n; i++)            scanf("%d",&a[i]);        memset(hash,0,sizeof(hash));        for(int i=1; i<=m; i++)        {            scanf("%s",str);            int l=strlen(str);            int sum=0;            for(int j=0; j<l; j++)                sum=sum*10+judge(str[j]);            hash[sum]++;        }        for(int i=0; i<n; i++)            printf("%d\n",hash[a[i]]);    }    return 0;}


0 0