青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

pku 1706 References 簡單hash

題意很簡單,把文章中的引用信息整理到最后并給它們重新編號。。我想不懂為什么我自己寫hash效率那么低。。。還有就是看清題目,空行是僅僅包括空格、TAB、回車的行
  1 # include <stdio.h>
  2 # include <stdlib.h>
  3 # include <string.h>
  4 //char tmp[100];
  5 struct part
  6 {
  7     char tmp[3][100];
  8     int c;
  9     int id;
 10 }refer[40001];
 11 int c=0,hashc=1;
 12 int hash_map[100001][2];
 13 void puthash(int num,int val)
 14 {
 15     int h=num%99997;
 16     while(hash_map[h][0]!=-1&&hash_map[h][0]!=num)
 17          h=(h+1)%100000;
 18     if(hash_map[h][0]==-1)
 19     {
 20         hash_map[h][0]=num;
 21         hash_map[h][1]=val;
 22 
 23     }
 24 }
 25 int gethash(int num)
 26 {
 27     int h=num%99997;
 28     while(hash_map[h][0]!=-1&&hash_map[h][0]!=num)
 29              h=(h+1)%100000;
 30     if(hash_map[h][0]==-1)
 31         return -1;
 32     else
 33         return hash_map[h][1];
 34 }
 35 int cmp(const void *a,const void *b)
 36 {
 37     struct part *aa=(struct part *)a;
 38     struct part *bb=(struct part *)b;
 39     return aa->id-bb->id;
 40 }
 41 int emptyline(char *str)
 42 {
 43     int i;
 44     if(strlen(str)==0return 1;
 45     for(i=0;i<strlen(str);i++)
 46       if(str[i]!=' '&&str[i]!='\t')
 47         return 0;
 48     return 1;   
 49 }
 50 int main()
 51 {
 52 //    freopen("input.txt","r",stdin);
 53 //    freopen("ans.txt","w",stdout);
 54     int i,j;
 55         char str[100];
 56     int jud=0;
 57     memset(hash_map,-1,sizeof(hash_map));
 58     
 59     while(gets(str))
 60     {
 61         //if(!strcmp(str,"---")) break;
 62         if(str[0]=='[')
 63         {
 64             for(i=0;str[i]!=']';i++);
 65             str[i]='\0';
 66             refer[c].id=atoi(str+1);
 67             refer[c].c=0;
 68             strcpy(refer[c].tmp[refer[c].c++],str+i+1);
 69             while(gets(str))
 70             {
 71                 if(emptyline(str)) break;
 72                     
 73                 else
 74                 {
 75                     strcpy(refer[c].tmp[refer[c].c++],str);
 76                 }
 77             }
 78             c++;
 79         }
 80         else if(emptyline(str)) continue;
 81         else
 82         {
 83             if(jud==0)
 84                 jud=1;
 85             else
 86                 printf("\n");
 87             do
 88             {
 89                 if(emptyline(str)) break;
 90 
 91                 for(i=0;i<strlen(str);i++)
 92                 {
 93                     if(str[i]!='[')
 94                         printf("%c",str[i]);
 95                     else
 96                     {
 97                         int num,h;
 98                         for(j=i;str[j]!=']';j++);
 99                         str[j]='\0';
100                         num=atoi(str+i+1);
101                         str[j]=']';
102                         h=gethash(num);
103                         if(h==-1)
104                         {
105                             puthash(num,hashc);
106                             h=hashc++;
107                         }
108                         printf("[%d]",h);
109                         i=j;
110                     }
111                 }
112                 printf("\n");
113                 
114             }while(gets(str));
115         }
116     }
117     for(i=0;i<c;i++)
118     {
119         int res=gethash(refer[i].id);
120         if(res==-1)
121         {
122             puthash(refer[i].id,hashc);
123             res=hashc++;
124         }
125         refer[i].id=res;
126     }
127     qsort(refer,c,sizeof(struct part),cmp);
128 
129     for(i=0;i<c;i++)
130     {
131         printf("\n");
132         printf("[%d]",refer[i].id);
133         for(j=0;j<refer[i].c;j++)
134             printf("%s\n",refer[i].tmp[j]);
135     }
136 printf("\n");
137     return 0;
138 }
139 



posted on 2010-11-07 02:54 yzhw 閱讀(262) 評論(0)  編輯 收藏 引用 所屬分類: data structsimple problem~

<2010年11月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

公告

統計系統

留言簿(1)

隨筆分類(227)

文章分類(2)

OJ

最新隨筆

搜索

積分與排名

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩亚洲不卡| 亚洲一区二区黄| 欧美成人dvd在线视频| 午夜欧美电影在线观看| 亚洲婷婷综合色高清在线 | 在线看国产一区| 精品电影一区| 亚洲免费网站| 一本色道久久综合亚洲91| 一本色道久久| 欧美在线视频观看免费网站| 久久久久网址| 欧美日韩精品一本二本三本| 国产精品igao视频网网址不卡日韩| 国产精品久久77777| 国产欧美一区二区三区在线看蜜臀 | 亚洲午夜久久久久久久久电影院 | 久久男人资源视频| 美女免费视频一区| 欧美日韩黄视频| 国产色综合天天综合网| 激情偷拍久久| 在线视频亚洲欧美| 欧美一区日本一区韩国一区| 美玉足脚交一区二区三区图片| 亚洲国产日韩欧美综合久久| 亚洲人成在线免费观看| 亚洲欧美日韩另类| 欧美高清在线一区二区| 国产乱码精品一区二区三区忘忧草 | 欧美在线1区| 你懂的国产精品永久在线| 欧美性猛交xxxx乱大交蜜桃| 黄色国产精品| 午夜久久久久| 亚洲人体影院| 久久免费高清| 国产精品一区二区在线观看不卡| 亚洲激情啪啪| 久久在线视频在线| 亚洲欧美精品在线| 国产精品ⅴa在线观看h| 亚洲精品国精品久久99热一| 久久久视频精品| 亚洲天堂激情| 欧美视频一区二区在线观看| 91久久在线播放| 国产精一区二区三区| 亚洲激情另类| 快播亚洲色图| 欧美一区二区三区在线播放| 国产精品每日更新在线播放网址| 日韩一级大片在线| 欧美韩日高清| 免费的成人av| 亚洲国产精品久久久久久女王| 久久久福利视频| 新67194成人永久网站| 国产精品成av人在线视午夜片| 99这里有精品| 亚洲精品一区二区三区樱花| 欧美国产亚洲视频| 99在线热播精品免费| 亚洲精品视频免费观看| 久久婷婷综合激情| 免费不卡在线视频| 亚洲国产另类精品专区| 欧美成人在线免费观看| 欧美中文字幕| 欧美亚洲视频在线观看| 欧美91视频| 久久精品盗摄| 一区在线电影| 欧美大片一区| 欧美激情中文字幕乱码免费| 一本久道久久综合狠狠爱| 日韩午夜精品| 国产精品久久久久77777| 香蕉久久一区二区不卡无毒影院| 亚洲综合国产| 在线播放视频一区| 亚洲国产日韩在线| 国产精品盗摄久久久| 亚洲欧美中文另类| 欧美一区二区在线免费观看| 在线观看日韩欧美| 亚洲精品国产精品国产自| 欧美日韩视频在线观看一区二区三区| 正在播放亚洲一区| 欧美一区二区在线| 日韩视频免费观看| 亚洲欧美国产精品va在线观看| 黄色一区二区在线| 亚洲精品在线电影| 国产日本亚洲高清| 亚洲国产成人tv| 国产精品日日摸夜夜添夜夜av| 久久久精品999| 欧美日本亚洲视频| 久久久精品动漫| 欧美日韩亚洲一区二| 久久婷婷影院| 国产精品福利网站| 欧美阿v一级看视频| 欧美四级电影网站| 老巨人导航500精品| 欧美日本国产在线| 六月天综合网| 国产精品美女在线观看| 亚洲国产黄色| 国产综合在线看| 亚洲一区二区三区午夜| 亚洲精品国产系列| 久久免费高清视频| 久久精品国产视频| 欧美视频免费| 亚洲精品视频一区| 亚洲人在线视频| 久久精品免费观看| 欧美一区二区女人| 欧美午夜大胆人体| 91久久精品视频| 亚洲国产另类久久久精品极度| 午夜精品一区二区在线观看| 亚洲免费观看在线观看| 久久午夜精品一区二区| 久久国产精品亚洲va麻豆| 欧美亚洲成人网| 亚洲精品一区二区三区av| 亚洲黄色一区| 蜜月aⅴ免费一区二区三区| 合欧美一区二区三区| 亚洲视频香蕉人妖| 亚洲视频999| 欧美日韩国产首页在线观看| 亚洲福利视频免费观看| 亚洲风情在线资源站| 宅男噜噜噜66国产日韩在线观看| 国产麻豆精品theporn| 久久综合电影一区| 久久国产高清| 久久av免费一区| 先锋影音久久| 亚洲视频一区在线观看| 亚洲小少妇裸体bbw| 亚洲视频香蕉人妖| 欧美91福利在线观看| 国产欧美一区二区三区沐欲| 日韩网站在线看片你懂的| 夜久久久久久| 欧美日韩在线视频一区二区| 亚洲欧洲免费视频| 一区二区三区高清在线观看| 欧美日韩中文字幕在线视频| 中文网丁香综合网| 欧美一级大片在线观看| 国产亚洲人成a一在线v站| 久久国产精品一区二区| 你懂的一区二区| 夜夜精品视频一区二区| 欧美视频在线观看免费| 午夜精品亚洲| 欧美成人免费视频| 一本大道av伊人久久综合| 欧美国产精品va在线观看| 亚洲国产福利在线| 欧美日韩成人综合在线一区二区| 一区二区日韩伦理片| 久久精品视频网| 亚洲精品字幕| 国产日韩欧美91| 欧美成人免费观看| 亚洲午夜一区二区| 免费观看30秒视频久久| 亚洲香蕉网站| 在线观看视频欧美| 国产精品国产三级国产专区53 | 久久一区免费| 中文久久精品| 国产一区二区久久久| 蜜桃久久av| 亚洲在线播放| 亚洲国产人成综合网站| 久久成人一区二区| 亚洲日本va午夜在线影院| 国产精品视频观看| 欧美黄色片免费观看| 性欧美xxxx视频在线观看| 欧美激情视频在线播放| 欧美亚洲免费电影| 日韩亚洲一区二区| 国模套图日韩精品一区二区| 老司机精品视频网站| 国产午夜精品久久久| 91久久精品国产91性色tv| 亚洲丰满少妇videoshd| 欧美三级午夜理伦三级中视频| 一本久道久久综合婷婷鲸鱼| 亚洲欧洲日本mm| 国产九九视频一区二区三区|