作弊揭发者(vector容器)
2015-07-08 18:25
183 查看
鉴于我市拥堵的交通状况,市政交管部门经过听证决定在道路两侧安置自动停车收费系统。当车辆驶入车位,系统会通过配有的摄像头拍摄车辆画面,通过识别车牌上的数字、字母序列识别车牌,通过连接车管所车辆信息数据库确认车辆,进行扣费。斗智斗勇的好戏一般从此处展开…一些车主通过在停车时遮挡车牌上的一个或多个数字、字母序列,来阻碍识别系统的识别工作,以此逃避停车费用的缴纳。车主这简直是用轻轻的一挡搞出来一个世界难题有木有?!管理是一方面,技术解决才是王道啊。这么难的项目不得不交给计蒜客实验室了。D 神负责识别颜色,E 神负责型号识别,可能的车牌范围就这么一点点的被缩小了。作为实习生的蒜头也是任务艰巨,将已经存在车辆数据库中的可与当前已知信息相匹配的车牌信息筛选出来,这可是整个项目的第一步啊,重要性我就不多说了,加油吧。输入输入文件的第一行包含 9 个字符的字符序列代表识别的。其中可识别的字符已由大写字母和数字显示,“*”表示因为遮挡而未被识别的字符。输入文件的第二行包含一个整数 n (1 ≤ n ≤ 1000) —— 机动车数据库中的牌照信息的数量。接下来 n 行,包含相应的牌照信息,每行一个。牌照信息为长度为 9 的仅包含数字和大写字母的字符串。所有的牌照信息保证各不相同。输出输出文件的第一行为一个整数 k (0 ≤ k ≤ n) —— 符合给定要求的牌照数。接下来的 k 行,输出所有可能的牌照信息。
样例1
输入:A**1MP19* 4 A001MP199 E885EE098 A111MP199 KT7351TTB输出:
2 A001MP199 A111MP199
这一题很简单哪!
#include<cstdio>#include<iostream>#include<cstring>#include<vector>using namespace std;int main(){ string s,s1,s2; int n,i,a[10],j; while(cin>>s) { vector<string>vec; s1=s2=""; j=0; for(i=0;i<9;i++) { if(s[i]!='*') { s1+=s[i]; a[j++]=i; } } cin>>n; while(n--) { s2=""; cin>>s; for(i=0;i<j;i++) { s2+=s[a[i]]; } // cout<<s2<<endl; if(s1==s2) { vec.push_back(s); } } cout<<vec.size()<<endl; for(j=0;j<vec.size();j++) { cout<<vec[j]<<endl; } }}
相关文章推荐
- 如何科学地提高学习改进记忆力
- git小结
- Struts2基本程序演示
- 此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态
- mybatis中的#和$的区别
- netlink 中对multipath的处理
- Java集合系列之LinkedList源码分析
- Python安装PyGraphics包 (使用media模块)问题
- 基于Kubernetes构建Docker集群管理详解
- SharePoint自动化系列——Upload files to SharePoint library using PowerShell.
- LeetCode—Median of Two Sorted Arrays
- opensips修改日志
- Oracle Solaris 与 pci dss
- mysql 学习基础知识汇总
- UVa 144 - Student Grants
- 《转》浅析Ubuntu 12.04右键菜单
- 工作中遇到的问题与解决汇总
- programming-challenges ShellSort (110407) 题解
- 顶级域名、二级域名
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制