首页 > 其他 > 详细

usaco Name That Number

时间:2015-08-26 21:48:02      阅读:252      评论:0      收藏:0      [点我收藏+]

为什么要使用如此反人类的输入方式。

/*
ID: modengd1
PROG: namenum
LANG: C++
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main() {
    FILE *in = fopen ("namenum.in", "r");
    FILE *in2 = fopen ("dict.txt", "r");
    FILE *out = fopen ("namenum.out","w");
    int nsolutions = 0;
    int numlen;
    char input[20];
    char dict[20];
    char map[256];
    int i, j;
    map[‘A‘] = map[‘B‘] = map[‘C‘] = ‘2‘;
    map[‘D‘] = map[‘E‘] = map[‘F‘] = ‘3‘;
    map[‘G‘] = map[‘H‘] = map[‘I‘] = ‘4‘;
    map[‘J‘] = map[‘K‘] = map[‘L‘] = ‘5‘;
    map[‘M‘] = map[‘N‘] = map[‘O‘] = ‘6‘;
    map[‘P‘] = map[‘R‘] = map[‘S‘] = ‘7‘;
    map[‘T‘] = map[‘U‘] = map[‘V‘] = ‘8‘;
    map[‘W‘] = map[‘X‘] = map[‘Y‘] = ‘9‘;
    fscanf(in,"%s",input);
    int l1=strlen(input);
    bool finD=false;
    while(~fscanf(in2,"%s",dict))
    {
        int i;
        int l2=strlen(dict);
        if(l1!=l2)
            continue;
        for( i=0;i<l2;i++)
        {
            if(input[i]!=map[dict[i]])
                break;
        }
        if(i==l2)
        {
            fprintf (out, "%s\n", dict);
            finD=true;
        }
    }
    if(!finD)
        fprintf(out,"NONE\n");
    return 0;
}

  

usaco Name That Number

原文:http://www.cnblogs.com/modengdubai/p/4761551.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!