HDU 2043 密码(判断字符串存在性)

密码

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 45796    Accepted Submission(s): 18423

Problem Description

网上流传一句话:"常在网上飘啊,哪能不挨刀啊~"。其实要想能安安心心地上网其实也不难,学点安全知识就可以。

首先,我们就要设置一个安全的密码。那什么样的密码才叫安全的呢?一般来说一个比较安全的密码至少应该满足下面两个条件:

(1).密码长度大于等于8,且不要超过16。

(2).密码中的字符应该来自下面“字符类别”中四组中的至少三组。

这四个字符类别分别为:

1.大写字母:A,B,C...Z;

2.小写字母:a,b,c...z;

3.数字:0,1,2...9;

4.特殊符号:~,!,@,#,$,%,^;

给你一个密码,你的任务就是判断它是不是一个安全的密码。

Input

输入数据第一行包含一个数M,接下有M行,每行一个密码(长度最大可能为50),密码仅包括上面的四类字符。

Output

对于每个测试实例,判断这个密码是不是一个安全的密码,是的话输出YES,否则输出NO。

Sample Input

3
a1b2c3d4
[email protected]
^~^@^@!%

Sample Output

NO
YES
NO

Author

linle

Source

2005实验班短学期考试

题解:判断一下字符串是否存在。

AC代码:

#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<cstdlib>
#include<iomanip>
#include<algorithm>
#include<time.h>
typedef long long LL;
using namespace std;

int main()
{
	char a[100];
    int sum,i,n,b,c,d,e;
    cin>>n;
    getchar();
    while(n--)
         {
          b=0,c=0,d=0,e=0;
            gets(a);
            if(strlen(a)>=8&&strlen(a)<=16)
            {
                  for(i=0;i<strlen(a);++i)
                  {
         if(a[i]>='0'&&a[i]<='9')
                     b=1;
                     if(a[i]>='a'&&a[i]<='z')
                     c=1;
                     if(a[i]>='A'&&a[i]<='Z')
                     d=1;
                     if(a[i]=='~'||a[i]=='!'||a[i]=='@'||a[i]=='#'||a[i]=='$'||a[i]=='%'||a[i]=='^')
                     e=1;
                }
                sum=b+c+d+e;
                if(sum>=3)
                cout<<"YES"<<endl;
                else
                cout<<"NO"<<endl;
            }
            else
            cout<<"NO"<<endl;
         }    

	return 0;
} 
时间: 2024-10-09 23:17:11

HDU 2043 密码(判断字符串存在性)的相关文章

hdu 2043密码

密码 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 29823    Accepted Submission(s): 11976 Problem Description 网上流传一句话:"常在网上飘啊,哪能不挨刀啊-".其实要想能安安心心地上网其实也不难,学点安全知识就可以.首先,我们就要设置一个安全的密码.那什么样的密码才

HDU - 2043密码 水题

密码 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 54994    Accepted Submission(s): 22267 Problem Description 网上流传一句话:"常在网上飘啊,哪能不挨刀啊-".其实要想能安安心心地上网其实也不难,学点安全知识就可以. 首先,我们就要设置一个安全的密码.那什么样的密码才

C语言的字符串转为OC中的字符串,控制台输入用户名和密码,判断输入的用户名是否是@“Frank”, 密码 是否是 @“lanou”, 如果用户名和密码都正确,则输出登录成功, 否则输出登录失败.

char name[20] = "";存储用户名 char code[20] = "";存储密码 printf("请输入用户名与密码"); scanf("%s%s", name, code); NSString *str1 = [NSString stringWithFormat:@"%s", name ]; NSString *str2 =[NSString stringWithFormat:@"

HDU 2072 单词数 --- 字符串处理

/* HDU 2072 单词数 --- 字符串处理 */ #include <cstdio> //C语言改成stdio.h即可 #include <cstring> //C语言改成string.h即可 const int maxn = 85; int main() { char *head1, *head2; char a[maxn]; char b[maxn][maxn]; int i, k, len, cnt1, cnt2; while (gets(a)){ //遇到字符串&q

Oracle中如何判断字符串是否全为数字

Oracle中如何判断字符串是否全为数字 学习了:http://www.cnblogs.com/zrcoffee/archive/2012/12/11/2812744.html 本文介绍了判断字符串是否全为数字的4种办法,另外还介绍了一个translate函数的小技巧,从任意字符串中提取数字(调用2次translate函数).这个办法是一个公司同事发现的,用起来很方便,但理解起来稍有点困难.1.通过ASCII码判断是否数字,介于[48, 57]之间,(ascii('0') = 48, ascii

判断字符串是不是数字

NumberUtils.isNumber(str)判断字符串是不是数字或者能不能转换成数字 public class StringIsNumber { public static void main(String[] args) { Scanner s = new Scanner(System.in); String str = s.nextLine(); if(NumberUtils.isNumber(str)){ System.out.println("输入的是数字"); }els

练习:判断字符串“mingrikejijavabu”中,字符“i”出现了几次,并将结果输出。

1 // 判断字符串“mingrikejijavabu”中,字符“i”出现了几次,并将结果输出. 2 3 String str="mingrikejijavabu"; 4 5 //方法1:替换法 6 String str1=str.replace("i",""); //将字符串中i替换为空,创建新的字符串 7 System.out.println("i出现的次数为:"+(str.length()-str1.length()))

判断字符串中字母出现的次数用分割法

public class zuoye3 { public static void main(String[] args) { String a="mingrikejijavabu";//判断字符串“i”出现了几次并将其输出 int c=0;//令c为i出现的次数 String[] b=a.split("");//分隔符,把语句分割. for (String x:b)//遍历输出一遍所有字母 { if(x.equals("i"))//是否有与i相等

PHP判断字符串中是否包含指定字符串,支持中文哦

RT,随手写的 1 /** 2 * 判断字符串中是否包含指定字符串 3 * @var source 源字符串 4 * @var target 要判断的是否包含的字符串 5 * @return bool 6 */ 7 function hasstring($source,$target){ 8 preg_match_all("/$target/sim", $source, $strResult, PREG_PATTERN_ORDER); 9 return !empty($strResul