zoukankan      html  css  js  c++  java
  • POJ2503 Babelfish(二分)

    题目链接

    分析;

    主要是学着用一下bsearch。

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    struct Entry{
        char english[15], foreign[15];
    }entrys[100010];
    
    int cmp(const void *a, const void *b){
        return strcmp((*(struct Entry *)a).foreign, (*(struct Entry *)b).foreign);
    }
    
    int b_cmp(const void *a, const void *b){
        return strcmp((char *)a, (*(struct Entry *)b).foreign);
    }
    
    int main(){
        char s[30];
        int top=0;
        struct Entry *p;
    
        while(gets(s)){
            if(s[0] == '\0') break;
            sscanf(s, "%s %s", entrys[top].english, entrys[top].foreign);
            top++;
        }
    
        qsort(entrys, top, sizeof(entrys[0]), cmp);
    
        while(scanf("%s", s) == 1){
            p = (struct Entry *)bsearch(s, entrys, top, sizeof(entrys[0]), b_cmp);
            if(p == NULL){
                printf("eh\n");
            }
            else printf("%s\n", p->english);
        }
    
    
        return 0;
    }
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    struct Entry{
        char english[15], foreign[15];
    }entrys[100010];
    
    int cmp(const void *a, const void *b){
        return strcmp((*(struct Entry *)a).foreign, (*(struct Entry *)b).foreign);
    }
    
    int b_cmp(const void *a, const void *b){
        return strcmp((char *)a, (*(struct Entry *)b).foreign);
    }
    
    int main(){
        char s[30];
        int top=0;
        struct Entry *p;
    
        while(gets(s)){
            if(s[0] == '\0') break;
            sscanf(s, "%s %s", entrys[top].english, entrys[top].foreign);
            top++;
        }
    
        qsort(entrys, top, sizeof(entrys[0]), cmp);
    
        while(scanf("%s", s) == 1){
            p = (struct Entry *)bsearch(s, entrys, top, sizeof(entrys[0]), b_cmp);
            if(p == NULL){
                printf("eh\n");
            }
            else printf("%s\n", p->english);
        }
    
    
        return 0;
    }
  • 相关阅读:
    关联原理说明
    一个软件测试工程师的学习体验
    缺陷漏测分析:测试过程改进
    自动化测试的7个步骤
    ACM题目————Subsequence
    ACM题目————Aggressive cows
    ACM题目————列变位法解密
    C++TSL之map容器(悲伤的故事)
    ACM题目————二叉树最大宽度和高度
    ACM题目————装箱问题
  • 原文地址:https://www.cnblogs.com/tanhehe/p/3003758.html
Copyright © 2011-2022 走看看