杭电acm2043密码
密码
http://acm.hdu.edu.cn/showproblem.php?pid=2043
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 10834 Accepted Submission(s): 4356
网上流传一句话:"常在网上飘啊,哪能不挨刀啊~"。其实要想能安安心心地上网其实也不难,学点安全知识就可以。
首先,我们就要设置一个安全的密码。那什么样的密码才叫安全的呢?一般来说一个比较安全的密码至少应该满足下面两个条件:
(1).密码长度大于等于8,且不要超过16。
(2).密码中的字符应该来自下面“字符类别”中四组中的至少三组。
这四个字符类别分别为:
1.大写字母:A,B,C...Z;
2.小写字母:a,b,c...z;
3.数字:0,1,2...9;
4.特殊符号:~,!,@,#,$,%,^;
给你一个密码,你的任务就是判断它是不是一个安全的密码。
#include<stdio.h>
#include<string.h>
int main()
{int M,i,t,a,b,c,d,sum;char s[60];while(scanf("%d",&M)!=EOF){while(M--){scanf("%s",s);t=strlen(s);if(t<8||t>16){printf("NO\n");continue;}a=b=c=d=sum=0;for(i=0;s[i]!='\0';i++){if(s[i]>='A'&&s[i]<='Z')a=1;else if(s[i]>='a'&&s[i]<='z')b=1;else if(s[i]>='0'&&s[i]<='9')c=1;else if(s[i]=='~'||s[i]=='!'||s[i]=='@'||s[i]=='#'||s[i]=='$'||s[i]=='%'||s[i]=='^')d=1;}sum=a+b+c+d;if(sum>=3)printf("YES\n");elseprintf("NO\n");}}return 0;
}
转载于:https://www.cnblogs.com/pcoda/archive/2011/05/16/2104571.html
杭电acm2043密码相关推荐
- 杭电oj2043密码
Problem Description 网上流传一句话:"常在网上飘啊,哪能不挨刀啊-".其实要想能安安心心地上网其实也不难,学点安全知识就可以. 首先,我们就要设置一个安全的密码 ...
- 杭电第七次作业c语言短学期,杭电短学期:算法与编程.doc
杭电短学期:算法与编程.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档 ...
- 杭电OJ分类题目(1)
原题出处:HDOJ Problem Index by Type,http://acm.hdu.edu.cn/typeclass.php 杭电OJ分类题目(1) HDU Introduction HDU ...
- HDU杭电OJ经典100题2000-2099_Java版详细题解(持续更新)
今年寒假打算用Java把杭电2000-2099全部AC(现在持续更新),如下是题目链接,之后是我的题解,全部做完后我会把所有AC的题解打包上传的 题号 题名 题号 题名 2000 ASCII码排序 2 ...
- 数字杭电之抢课系统分析
最近一段时间突发其想打算做个类似携程抢火车票一样的云抢课平台,项目做了一大半突然看见新闻有人做帮其他人抢火车票的生意被逮起来的.而且云抢课平台一旦做起来,学校的土豆服务器肯定分分钟崩溃,到时候学校肯定 ...
- 杭电选课脚本(一)登录选课系统
序 又到了学期末,选课的时间到了,中国的大学系统你懂得,卡,每次到了抢课时间,总是又卡又慢,半天刷不出来一个网站,如何写一个脚本,到了抢课时间运行一下,可以省时省力.这一篇只是伪登陆,后续的选课不知道 ...
- 【HDU100】杭电入门一百道 C++ 全 题 解
" Ctrl AC!一起 AC!" 题目集合链接:HDU2000-2099http://acm.hdu.edu.cn/listproblem.php?vol=11 前言 1. 好像 ...
- hdoj杭电问题分类
杭电上的题虽然多,但是一直苦于找不到问题分类,网页都是英文的,所以平时做题也没怎么看,今天仔细一看,问题分类竟然就在主页....做了那么久的题居然没发现,表示已经狗带..不要笑,不知道有没有像我一样傻 ...
- Linux常用命令总结(基于杭电泛雅平台)-Linux(13)
前言 总结一下杭电泛雅平台以及我认为的比较重要的Linux命令吧,真实一个浩大的工程. 点击命令可以查看详细的用法 文件管理 命令 作用 touch 新增文件:修改文件时间属性 mkdir 新增目录 ...
最新文章
- Linux下C++开发工具介绍
- SAP WM 采购订单收货后LT06报错-No bin types have been assigned to storage unit type IP-
- 中科大计算机应用,中科大2012计算机应用专业考研初试考什么
- 图标字体iconfont的使用
- 设计模式之单件模式(Singleton Pattern)
- 吴恩达|机器学习作业6.1.SVM建立垃圾邮件分类器
- Python学习系列----第六章 数据结构
- 弗洛伊德算法(floyd)
- Wannafly挑战赛4,C题割草机,(模拟)
- 密码学朋克宣言(1993)
- 三星官方smdkv210 uboot移植到我的s5pv210开发板
- 计算机数字媒体计数专业好就业吗,2019数字媒体技术专业就业形势和就业方向分析...
- 微信小程序添加开发者、赋予权限、添加体验者
- 优秀的python库_一个优秀Python库,轻松吟诗作对写文章!
- Redis的使用场景有哪些?
- 山外论坛每日一贴的学习
- 【案例分享】高效率利器 - SC 频谱分析仪
- nfc免root写卡,nfc真正免root的
- Element-UI框架多个el-input标签并排
- Python基于OpenCV的智能交通灯系统(南北车流量比例)[源码&部署教程]