HDOJ2043(JAVAset容器练习)

import java.io.PrintWriter;
import java.util.HashSet;
import java.util.Scanner;

public class Main {
    static PrintWriter cout = new PrintWriter(System.out, true);
    static Scanner cin = new Scanner(System.in);
    static final char[] chs = {‘~‘,‘!‘,‘@‘,‘#‘,‘$‘,‘%‘,‘^‘};
    static boolean isChar(char ch)
    {
        for(int i = 0; i < chs.length; i++)
            if(chs[i] == ch)
                return true;
        return false;
    }
    public static void main (String[] args){
        int t = cin.nextInt();
        while(t-- > 0)
        {
            String s = cin.next();
            if(!(s.length()>=8&&s.length()<=16))
            {
                cout.println("NO");
                continue;
            }
            int i = 0;
            HashSet<String> set = new HashSet<String>();
            while(i < s.length())
            {
                if(‘0‘<=s.charAt(i)&&s.charAt(i)<=‘9‘)
                {
                    set.add("1");
                }
                else if(‘a‘<=s.charAt(i)&&s.charAt(i)<=‘z‘)
                {
                    set.add("2");
                }
                else if(‘A‘<=s.charAt(i)&&s.charAt(i)<=‘Z‘)
                {
                    set.add("3");
                }
                else if(isChar(s.charAt(i)))
                {
                    set.add("4");
                }
                if(set.size() >= 3)
                {
                    break;
                }
                i++;
            }
            if(set.size() >= 3)
                cout.println("YES");
            else
                cout.println("NO");
        }

    }
}
时间: 2024-11-03 22:30:04

HDOJ2043(JAVAset容器练习)的相关文章

JAVAset容器基本知识

import java.io.PrintWriter; import java.util.HashSet; import java.util.Scanner; public class Main { static PrintWriter cout = new PrintWriter(System.out, true); static Scanner cin = new Scanner(System.in); public static void main (String[] args){ Has

scala容器使用

花了两个小时左右,学习了一下scala语言, 由于scala运行在jvm之上, 可以使用java容器也可以使用scala自带的容器. import java.util import java.util.{HashMap => JavaHashMap} import scala.collection.mutable.HashMap import java.util.{ArrayList => JavaList} // rename object tewst { def testarry(): U

Docker学习笔记——Mongo Dockerfile及容器运行

1.创建项目目录mongo,在目录下上传下载的Mongodb安装文件及mongo.conf配置文件,创建Dockerfile文件,项目结构如下: mongo - Dockerfile - mongo.conf - mongodb-linux-x86_64-3.4.9.tgz - data - logs Dockerfile内容如下: # mongo # SOURCE_IMAGE FROM centos # MAINTAINER_INFO MAINTAINER bluemooder [email 

spring父子容器

通过HierarchicalBeanFactory接口,Spring的IoC容器可以建立父子层级关联的容器体系,子容器可以访问父容器中的Bean,但父容器不能访问子容器的Bean.在容器内,Bean的id必须是唯一的,但子容器可以拥有一个和父容器id相同的Bean.父子容器层级体系增强了Spring容器架构的扩展性和灵活性,因为第三方可以通过编程的方式,为一个已经存在的容器添加一个或多个特殊用途的子容器,以提供一些额外的功能. Spring使用父子容器实现了很多功能,比如在Spring MVC中

java持有对象【2】ArrayList容器续解

此为JDK API1.6.0对ArrayList的解释. ArrayList 使用java泛型创建类很复杂,但是应用预定义的泛型很简单.例如,要想定义用来保存Apple对象的ArrayList,可以声明ArrayList<Apple>,尖括号内为类型参数,(可以为多个).它指定了容器可以保存的类型. 通过使用泛型,可以在编译期防止将错误类型的对象放置到容器中. ArrayList向上转型为List. 应该注意到,在将元素从List中取出时,类型转换不是必须的了.因为List在调用get()时会

width:100%与绝对定位同时存在,偏移出父级容器

当父级容器内的子元素width设为100%,而子元素又有绝对定位时,子元素伸展超出父级容器,像下面 出现这种情况的原因,width:100%,这个百分之百是相对其定位父级而言的,其定位父级有多宽,这个子元素就有多宽,所以子元素跑到了父级容器外 html <div class="container"> <div class="content">好的</div> </div> css .container { positi

【Docker常见问题2】如何设置容器日志大小和保留个数

举例:当tomcat容器的运行,容器占用空间越来越大,约1个月就会超过2G,如何解决? 步骤1:查看容器日志大小:假设容器目录为/var/lib/docker/containers,那么执行如下命令 cd /var/lib/docker/containers  #进入默认容器空间目录 du -sh *            #统计文件大小2.4G  de92a5643f7ffb106f8abba21fc0f93996842917a52879153adc95a73312934a-json.log

Vector容器 和 iteration 迭代器

vector容器 vector是同一种类型的对象的集合,每个对象都有一个对应的整数索引值.和string对象一样,标准库负责管理存储元素的相关内存.我们把vector称为容器,是因为它可以包含其他对象.一个容器中的所有对象都必须是同一种类型的. 使用vector之前,必须包含相应的头文件.#include <vector> using std::vector; vector是一个类模板(class template).模板允许程序员编写单个类或函数定义,这个类和函数定义可用于不同的数据类型上.

架构师养成--7.同步类容器和并发类容器

一.同步类容器 同步类容器都是线程安全的,但在某些场景下可能需要加锁来保护复合操作.复合类操作如:迭代(反复访问元素,遍历完容器中的所有元素).跳转(根据指定的顺序找到当前元素的下一个元素).以及条件运算.这些复合操作在多线程并发的修改容器时,可能会表现出意外的行为,最经典的便是ConcurrentModificationException,原因是当容器迭代的过程中,被并发的修改了内容,这是由于早期迭代器设计的时候并没有考虑并发修改的问题. 同步类容器:如古老的Vector/HashTable.