TOJ3582图书馆查询系统
来源:互联网 发布:淘宝代销做什么好 编辑:程序博客网 时间:2024/05/08 01:31
3582: 图书馆查询系统
时间限制(普通/Java):1000MS/3000MS 内存限制:65536KByte
总提交: 565 测试通过:126
总提交: 565 测试通过:126
描述
台州学院图书馆是一个馆藏丰富、发展迅速的地方性大学图书馆,截止2010年底,图书馆拥有馆藏纸质文献159.7万册。当然图书然必须具备一个图书查询系统,以便同学快速找到某一本书,请编写一个程序实现。
输入
测试数据有多组。
每一组测试数据第一行为一个正整数n(n<=10000),代表有n本图书;
接下来为n行图书信息:
Ai Bi
Ai和Bi 均为长度不大于100的字符串,Ai为书名,例如“c#.net”,Bi为图书的检索号,例如“TP393.08-4312132”,代表了该书存放的位置,n本图书的信息已经根据Ai的字典序排序后输入。
接下来为一个正整数m(m<=10000),代表查询的次数;
下面的m行,每行为待查询的书名si (si为长度不大于100的字符串)。
输出
对于每一个查询操作,若存在该书目,则输出对应的检索号,否则输出can't find
样例输入
5algorithm TT6589.965clock CX951.268computer TP21398.123english TP65.125math TP98652.3693computeralgorithmgraphics
样例输出
TP21398.123TT6589.965can't find
题目来源
台州学院第三届新生程序设计竞赛
简单的二分,直接上代码
#include<stdio.h>#include<string.h>int main(){int a,b,c,d,n,i,j,l;char q[10001][101],p[10001][101];char m[101];while(~scanf("%d",&n)){getchar();for(i=0;i<n;i++) { scanf("%s %s",q[i],p[i]); } scanf("%d",&l); getchar(); while(l--) { scanf("%s",m); getchar(); a=-1; int low=0,high=n-1;int middle;while(low<=high){middle = (low + high) / 2;if(strcmp(m,q[middle])==0){a=middle;break;}if(strcmp(m,q[middle])>0)low = middle +1;if(strcmp(m,q[middle])<0)high = middle - 1;} if(a==-1) printf("can't find\n"); else printf("%s\n",p[a]); }} return 0;}
0 0
- TOJ3582图书馆查询系统
- 台州学院ACM:3582 图书馆查询系统
- 图书馆 SQL查询系统 提升训练
- 图书馆系统
- 图书馆系统
- 分布式应用 GTK+Mysql+socket 简易图书馆查询系统
- 图书馆SQL查询2
- 图书馆管理系统
- 图书馆管理系统
- 图书馆管理系统
- 图书馆信息管理系统源代码
- 图书馆管理系统
- 图书馆信息管理系统
- 图书馆信息管理系统
- 图书馆管理系统
- 图书馆管理系统
- 图书馆管理系统
- 图书馆管理系统简介
- poj2155~Matrix~二维树状数组!
- POJ3278---bfs
- ubuntu下codeblocks个别设置(改字体/终端)
- 子类和父类的相互转换
- Android 开发笔记 第二季 BACK STACK
- TOJ3582图书馆查询系统
- 最近服务器apache有问题,整的头都大了,好在解决了,记录下
- 2013年总结及2014年计划(初级程序员)
- hdu2049 不容易系列之(4)——考新郎
- xml文件的序列化 →创建xml文件
- Codeforces 424 C Magic Formulas
- 重拾CSDN博客,开启新的征途!
- Objective-C之run loop详解
- [Leetcode] Count and Say