zoukankan      html  css  js  c++  java
  • poj 2503

    ***先对给的词,按首字母a-z排序,再二分查找***

    #include <iostream>
    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    #include <stack>
    #include <queue>
    
    using namespace std;
    typedef long long LL;
    #define INF 0x3f3f3f3f
    #define N 100005
    
    struct node
    {
        char s1[12];
        char s2[12];
    }stu[N];
    
    int cmp(node a, node b)
    {
        return strcmp(a.s2, b.s2)<0;
    }
    
    void f(char s[], int n)
    {
        int l, r, mid, flag=0;
        l=0;
        r=n-1;
        mid=(l+r)/2;
    
        while(l<=r)
        {
            if(strcmp(s, stu[mid].s2)>0)
            {
                l=mid+1;
            }
            else if(strcmp(s, stu[mid].s2)<0)
            {
                r=mid-1;
            }
            else
            {
                printf("%s
    ", stu[mid].s1);
                flag=1;
                return ;
            }
            mid=(l+r)/2;
        }
        if(!flag)
            printf("eh
    ");
        return ;
    }
    
    int main()
    {
        char ch, str[12];
        int i;
        memset(stu, 0, sizeof(stu));
        for(i=0; ; i++)
        {
            scanf("%s%c", stu[i].s1, &ch);
            if(ch==' ')
                scanf("%s", stu[i].s2);
            else
                break;
        }
        sort(stu, stu+i, cmp);
    
        f(stu[i].s1, i);
    
        while(~scanf("%s", str))
        {
            f(str, i);
        }
        return 0;
    }
  • 相关阅读:
    LeetCode 104
    LeetCode 100
    LeetCode 27
    LeetCode 7
    LeetCode 8
    蘑菇街2017春招笔试
    codeforces 5D
    codeforces 5C
    codeforces 875B
    codeforces 876B
  • 原文地址:https://www.cnblogs.com/9968jie/p/5715616.html
Copyright © 2011-2022 走看看