`
SIHAIloveYAN
  • 浏览: 119978 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

蓝桥杯java第八届第七题--日期问题

 
阅读更多
标题:日期问题

小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至2059年12月31日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在很多可能的日期与其对应。  

比如02/03/04,可能是2002年03月04日、2004年02月03日或2004年03月02日。  

给出一个文献上的日期,你能帮助小明判断有哪些可能的日期对其对应吗?

输入
----
一个日期,格式是"AA/BB/CC"。  (0 <= A, B, C <= 9)  

输出
----
输出若干个不相同的日期,每个日期一行,格式是"yyyy-MM-dd"。多个日期按从早到晚排列。  

样例输入
----
02/03/04  

样例输出
----
2002-03-04  
2004-02-03  
2004-03-02  

资源约定:
峰值内存消耗(含虚拟机) < 256M
CPU消耗  < 1000ms


请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。

没什么好说的。。

    package com.sihai.test;
    import java.util.ArrayList;  
    import java.util.Collections;  
    import java.util.HashSet;  
    import java.util.Scanner;  

    public class test {  

        static String a1,b1,c1;  
        static HashSet<Integer> res = new HashSet<Integer>();  
        static ArrayList<Integer> list = new ArrayList<Integer>();  

        static void getDate(String a1,String b1,String c1){  

            int a;  
            if(Integer.parseInt(a1)>=0 && Integer.parseInt(a1)<=59)  
                a = Integer.parseInt(("20"+a1));  
            else  
                a = Integer.parseInt(("19"+a1));  

            int b = Integer.parseInt(b1);  
            int c = Integer.parseInt(c1);  

            if(((a%4==0 && a%100!=0) ||a%400==0) && b==2 && c>0 && c<=29)  
                res.add(Integer.parseInt(""+a+b1+c1));  
            if(a%4!=0 && b==2 && c>0 && c<=28)  
                res.add(Integer.parseInt(""+a+b1+c1));  
            if((b==1 || b==3 || b==5 || b==7 || b==8 || b==10 || b==12) && c>0 && c<=31)  
                res.add(Integer.parseInt(""+a+b1+c1));  
            if((b==4 || b==6 || b==9 || b==11) && c>0 && c<=30)  
                res.add(Integer.parseInt(""+a+b1+c1));  
        }  

        public static void main(String[] args) {  
            Scanner sc = new Scanner(System.in);  
            String s = sc.nextLine();  

            String[] ss = s.split("/");  
            a1 = ss[0];  
            b1 = ss[1];  
            c1 = ss[2];  


            getDate(a1, b1, c1);  

            getDate(b1, c1, a1);  

            getDate(c1, b1, a1);  

            list.addAll(res);  
            Collections.sort(list);  

            for(int i:res){  

                System.out.println((""+i).substring(0, 4)+"-"+(""+i).substring(4, 6)+"-"+(""+i).substring(6,8));  
            }  


        }  

    }  
<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
分享到:
评论

相关推荐

    2018第九届蓝桥杯Java语言C组&答案(无第十题)

    【标题】"2018第九届蓝桥杯Java语言C组&答案(无第十题)"指的是2018年举办的第九届蓝桥杯编程竞赛中,针对Java语言的C组题目及其官方或个人提供的解答。蓝桥杯是一项旨在提升大学生及软件开发者编程能力的全国性...

    Java第十五届蓝桥杯大赛软件JavaB组真题

    【Java第十五届蓝桥杯大赛软件JavaB组真题】是针对Java编程技术的一场专业竞赛,旨在考察参赛者对Java语言的理解、应用及问题解决能力。蓝桥杯大赛作为国内知名的IT技能竞赛,其试题往往涵盖了Java的基础语法、面向...

    蓝桥杯1~11届真题及解析,精选练习题,算法等等,蓝桥杯资料合集450M(Java和C、C++方向)2024整理

    蓝桥杯1~11届真题及解析,精选练习题,算法等等,蓝桥杯资料合集450M(Java和C、C++方向) 蓝桥杯精选试题完整版.rar 算法.zip 1届国际赛.rar 2届国际赛.rar 5届省赛.rar 6届国赛.rar 6届省赛.rar 7届国赛.rar 7届省...

    蓝桥杯嵌入式第七届试卷及答案

    在"蓝桥杯嵌入式第七届试卷及答案"中,我们可以预见到试题会涵盖以下几个方面的知识点: 1. **嵌入式处理器**:包括微控制器(MCU)和数字信号处理器(DSP)等,它们在嵌入式系统中扮演核心角色,控制整个系统的...

    2018年省赛第九届蓝桥杯真题Java B组

    在准备蓝桥杯Java B组的竞赛时,考生需要重点掌握以下知识点: 1. **基础语法**:包括变量、数据类型、控制结构(如if-else、switch、for、while)、函数定义与调用等。 2. **数组与集合**:了解不同类型的数组...

    蓝桥杯第三届JAVA软件开发本科B组个人赛选拔赛真题

    【标签】:“蓝桥杯JAVA”标签表明了比赛的重点是JAVA语言,意味着我们需要深入理解JAVA的各种特性。这包括但不限于: 1. **JAVA基础**:深入理解JAVA语法,包括变量、常量、运算符、控制结构(如if-else,switch,...

    第八届蓝桥杯大赛个人赛省赛(软件类)真题

    压缩包内的文件名“第八届蓝桥杯大赛个人赛省赛(软件类)真题”暗示了文件内容可能包括了当年省赛的实际试题,这些试题可能包括选择题、填空题、编程题等多种形式,涉及计算机科学的基础理论、编程语言的语法特性、...

    蓝桥杯3-14届届省赛和5-14届国赛题目

    这个压缩包文件包含了从第3届到第14届的省赛题目以及第5届到第14届的国赛题目,是学习和准备蓝桥杯比赛的重要资源。 这些题目涵盖了C/C++程序设计、Java程序设计、Python编程等多个方面,涉及的知识点广泛且深入。...

    第十届蓝桥杯Java大学本科B组省赛试题

    【描述】:“第十届蓝桥杯Java大学本科B组省赛试题”是一场针对大学生Java编程能力的竞赛,旨在检验参赛者的编程基础、算法理解以及问题解决能力。蓝桥杯比赛历来以其严谨性和专业性闻名,对参赛者在Java语言的掌握...

    蓝桥杯历年4-8届决赛/国赛java/c++真题 下载 附历年试题及答案

    这个压缩包包含了从第四届到第八届的决赛和国赛的真题,对于备考的同学来说是一份宝贵的资源。下面将详细阐述这些知识点: 1. **编程基础**:蓝桥杯试题涵盖了基本的编程概念,如变量、数据类型、运算符、流程控制...

    第五届蓝桥杯Java本科A组试题.

    【标题】:“第五届蓝桥杯Java本科A组试题”涵盖了2014年全国软件和信息技术专业人才大赛的重要考点和实战题目,旨在测试参赛者的Java编程能力、算法设计能力和问题解决技巧。作为一项全国性的赛事,蓝桥杯对Java...

    第四届蓝桥杯java高职高专组预赛试题

    "第四届蓝桥杯Java高职高专组预赛试题"是一场针对高职高专学生的编程竞赛,旨在提升学生的Java编程能力和解决实际问题的技能。蓝桥杯是中国知名的编程竞赛之一,吸引了众多学子参与,旨在培养和选拔优秀的软件和信息...

    (完整)蓝桥杯第三届java本科决赛真题

    第三届蓝桥杯Java本科决赛的题目覆盖了广泛的Java知识领域,包括但不限于基础语法、数据结构、算法、面向对象编程、异常处理、多线程、网络编程以及Java集合框架等。 1. **基础语法** - 变量与数据类型:比赛中...

    2018省赛第九届蓝桥杯真题Java语言B组

    【描述】作为2018年的省级比赛,第九届蓝桥杯Java语言B组真题体现了当时Java编程的主流技术和趋势。重复的描述可能暗示了比赛的重视程度和难度,意味着选手需要对Java语言有深入且全面的掌握,包括但不限于类与对象...

    2018年4月1日蓝桥杯省赛第九届蓝桥杯真题JAVA(C组)

    【标题】2018年4月1日的“蓝桥杯”省赛是第九届蓝桥杯编程竞赛的一部分,重点考察的是JAVA语言在问题解决和算法实现中的应用。这一赛事面向C组参赛者,意味着它针对的是具有一定基础的编程学习者。 【描述】这个...

    蓝桥杯第七届决赛试题

    【蓝桥杯第七届决赛试题】涉及的是国内知名的编程竞赛——蓝桥杯的决赛阶段,主要考察参赛者的C++和Java编程能力。蓝桥杯赛事旨在推动软件和信息技术专业人才的培养,提高大学生的创新能力和就业竞争力。这次决赛的...

    历届蓝桥杯JAVA高职C组题真题.zip

    "历届蓝桥杯JAVA高职C组题真题.zip"是一个包含历年蓝桥杯编程竞赛JAVA高职组真题的压缩包。蓝桥杯是全国知名的软件和信息技术专业人才大赛,旨在提升大学生和职业院校学生的编程技能和创新思维。这个压缩包特别针对...

    2018第九届蓝桥杯javaB组真题

    【描述】中提到的"2018年第九届蓝桥杯javaB组真题"重复了标题的信息,暗示这份资料可能包含了一些当年比赛的实际题目,对于想要了解蓝桥杯赛题风格、准备类似比赛或者提高Java编程技能的人来说,是非常有价值的资源...

    第三届蓝桥杯预赛真题Java高职

    《第三届蓝桥杯预赛真题Java高职》是针对高职教育阶段的学生们设计的一次编程竞赛,主要测试参赛者在Java编程语言上的理论知识与实际应用能力。此竞赛旨在提升学生的编程技能,培养他们的逻辑思维和问题解决能力,为...

    第四届蓝桥杯java本科B组试题及答案

    从给定的文件中,我们可以提炼出三个与Java编程相关的知识点,这些知识点分别涉及日期处理、数学算法以及深度优先搜索(DFS)。以下是针对这三个知识点的详细解析: ### 知识点一:日期处理 - 世纪末的星期 #### ...

Global site tag (gtag.js) - Google Analytics