博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HNUSTOJ-1696 简单验证码识别(模拟)
阅读量:7124 次
发布时间:2019-06-28

本文共 1027 字,大约阅读时间需要 3 分钟。

1696: 简单验证码识别

时间限制: 2 Sec  
内存限制: 128 MB
提交: 148  
解决: 44
[ ][ ][ ]

题目描述

验证码是Web系统中一种防止暴力破解的重要手段。其中,目前以静态图验证码应用最为广泛,但是由于一些验证码的设计者缺乏相关知识和经验,所以目前在用的很多验证码都可以被轻松攻破的(如图1中的验证码就很容易通许程序识别出上面的文字是”1234”)。那么就从它开始我们的验证码识别之旅吧~

图1

已知验证码图片由9*25的像素矩阵组成,每个验证码中包含4个数字字符,每个字符是1个7*5的像素矩阵(如下图2所示,其中每一个格表示1个像素点)。

另外,验证码的四周留有1像素宽度的空白,每个字符(点阵)间也有1列1像素宽度的空白隔开。

图2

成功识别出全部验证码的同学将获得Accept作为奖励~

输入

第1行包含一个数字N(N <= 50000),表示验证码的数量。

接下来将会跟着N个9*25的验证码像素矩阵(其中,”.”表示背景,”*”表示文字部分),每个验证码后面跟着一个空行。

输出

输出对应验证码上的字符,每个验证码占一行。

    

样例输入

2.............................*....*....***..*****....**...**...*...*.*.......*.*....*...*...*.****...*..*....*....****.....*..*****...*.......*.....*.....*....*......*..*...*.....*...***...**....***......................................................***....**...***.....*...*...*..*....*...*...**...*...*.*.........*..*.*....****.****.....*..*..*.......*.*...*...*...*****.....*..*...*..*.......*....**....***..*****....*...........................

样例输出

41959624

提示

来源

好像有点摸清这种题的套路了。。。

转载于:https://www.cnblogs.com/Pretty9/p/7384051.html

你可能感兴趣的文章
深入理解Java中的底层阻塞原理及实现
查看>>
shell编程之转义和引用
查看>>
云盾.态势感知情报生态合作发布
查看>>
PHP排序函数
查看>>
ora.proxy_advm
查看>>
GitHub在其网站实现中移除对jQuery的使用
查看>>
美国明尼苏达州大学研制出仿生眼原型
查看>>
这些年,我是如何当好一个技术支持的
查看>>
多个网站域名进行301跳转合并对SEO有什么影响
查看>>
Linux学习笔记1_用户和权限
查看>>
安装mysql 配置环境变量
查看>>
一学就会的django项目服务器部署nginx-uwsgi-django/build
查看>>
ICPR 2018|阿里巴巴读光OCR及MTWI数据集亮相引关注
查看>>
对象存储oss中bucket中存在的文件夹怎么移动或者复制到另一个账号中的对象存储oss中???...
查看>>
RocksDB Write Prepared Policy
查看>>
那些我希望在一开始使用 Zsh(oh-my-zsh) 时就知道的
查看>>
为节省内存,Firefox 将用新方式阻止加载没用到的标签页
查看>>
JDBC学习再小结
查看>>
P3 项目轶事之面试
查看>>
屌炸天,JDK8的排序大法!!
查看>>