zoukankan      html  css  js  c++  java
  • Poj 2503

    #include<iostream>
    //#include<algorithm>
    #include<string.h>

    using namespace std;

    struct dict{
     char en[11];
     char a[11];
    }d[100001];

    int cmp(const void *x,const void *y)
    {
     return (strcmp((char*)((dict *)x)->a,(char *)((dict*)y)->a  ) );
    }

    int sBinarySearch(char *s,int low,int high)
    {
     int mid,nCmp;
     while(low<=high)
     {
      mid=(low+high)/2;
      nCmp=strcmp(d[mid].a,s);
      if(nCmp==0)
       return mid;
      else if(nCmp<0)
       low=mid+1;
      else
       high=mid-1;
     }
     return -1;
    }

    int main ()
    {
        int i,j,n;
     char f[13],c;
     i=0;
     while(1)
     {
      c=getchar();
      if(c=='\n')
       break;
      scanf("%s%s",f,d[i].a);
      d[i].en[0]=c;
      j=0;
      while(f[j])
      {
       d[i].en[j+1]=f[j];
       j++;
      }
      d[i].en[j+1]='\0';
      getchar();
      i++;

     }

     qsort((void *)d,i,sizeof(d[0]),cmp);

        while(scanf("%s",f)!=EOF)
     {
      n=sBinarySearch(f,0,i-1);
      if(n<0)
       printf("eh\n");
      else
       printf("%s\n",d[n].en);
     }

     return 0;
    }

  • 相关阅读:
    排序
    Apache架设Web服务器
    函数调用规范
    linux启动流程
    Make工程管理器
    网络相关知识
    数字电路中的建立时间与保持时间
    面试碰到的技术题
    嵌入式linux的驱动程序
    EF实体中的修改
  • 原文地址:https://www.cnblogs.com/qingcheng/p/2026312.html
Copyright © 2011-2022 走看看