2013-BIT程序设计 13. 真假桶装水 -- hash
来源:互联网 发布:mfc串口编程实例 编辑:程序博客网 时间:2024/04/27 18:51
13. 真假桶装水
桶装饮用水是北京市强制监管的商品,每一桶水的密封口处都应该能够找到一个标签,刮开后可以找到这桶水的电子监管号码。电子监管码一般是一个 16 位或 20 位的数字,把这个数字通过网络、手机或短信的方式发送给中国产品质量电子监管网,就可以得到关于该产品的品牌、名称、生产日期等内容。通过这些,我们就可以判断一桶水是不是假冒的。
在查询信息发送到电子监管网时,电子监管网会同时记录下该监管码的查询历史记录,和查询者的电话。因为某些 JS 会在假冒其它商品时通过非法手段获得一些合法的监管码,并在自己的产品上多次使用。如果一个监管码出现了来自不同电话号码的多次查询,就可以假定这个商品肯定是假的。
可以看出,电子监管系统是否能够生效的一个重要环节就是每个消费者都去检查自己购买的商品是否是真的,否则就可能被 JS 钻了制度的空子。因此,今后同学们购买桶装水时,最好仔细查验一下它的电子监管码,对自己的权利负责,也对他人的权利负责。
现在请你实现一个类似于电子监管网的系统,在一个文件 jgm.dat 中存放了合法的监管码,该文件以文本文件的形式存在,每行存放一个监管码,监管码为 16 位或 20 位的数字。该文件的尺寸不超过 4M。
输入
程序的输入每行包括一个要验证的监管码和一个电话号码(不超过 11 位)。其中查询同一个监管码的不同电话号码数不超过 10 个。
输出
如果一行上的监管码合法,则输出 "OK";若验证码被多个电话号码多次查询,则输出 "OK, but the code has been queried n times",其中 n 为查询该监管码的不同电话号码数;若验证码没有出现在给定的数据文件中,则输出 "Bad code"。
数据文件
- jgm.dat
测试用例 1 以文本方式显示1.12345678901234567890 68910000↵2.1234567890123456 68910000↵3.12345678901234567890 68910001↵4.66666666666666666666 12345678901↵5.12345678901234567890 68910000↵ 以文本方式显示1.OK↵2.OK↵3.OK, but the code has been queried 2 times↵4.Bad code↵5.OK, but the code has been queried 2 times↵ 1秒 61440KB 0
分析:考察了文件处理和hash的知识。
- 2013-BIT程序设计 13. 真假桶装水 -- hash
- 桶装水
- leetcode桶装水问题
- 北京的桶装水问题
- 桶装水行业的信息化-思考(一)
- 启盟桶装水配送管理系统
- 桶装水行业信息化思考(二)
- 此时桶装水是否应该进入?
- 桶装水和白开水的缺点
- 2013-BIT程序设计 1.球体问题 -- 数学题
- 2013-BIT程序设计 2.修剪草坪 -- 暴力
- 2013-BIT程序设计 3. 扫雷 -- 暴力
- 2013-BIT程序设计 5.传送带 -- 排序
- 2013-BIT程序设计 10. 倒数问题 -- 高精度
- 2013-BIT程序设计 11.识别条形码 -- 模拟
- 2013-BIT程序设计 12.编程珠玑 -- dp
- 2013-BIT程序设计 14.古罗马的加法
- 真假
- Android实现计时与倒计时的几种方法
- centos下查看系统的各种大小限制
- Android context(Application/Activity)与内存泄露
- 判断计算机字节序
- Android 根据屏幕大小设置字体
- 2013-BIT程序设计 13. 真假桶装水 -- hash
- centos查看磁盘空间大小
- JNI和NDK的区别
- How to Use MMC/SDC——翻译(其中有很多不理解或翻译不准确的地方,望批评指正)——附件
- android源码下载方式
- Android重力感应示例
- input子系统(二)
- iPad横屏调用相册,出现闪退
- Android自动化测试工具——Monkey