标题:日期问题小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在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));  }  }  }  

蓝桥杯java第八届第七题--日期问题相关推荐

  1. 蓝桥杯java第八届第十题--k倍区间

    标题: k倍区间给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区 ...

  2. 蓝桥杯java第八届第八题--包子凑数

    标题:包子凑数小明几乎每天早晨都会在一家包子铺吃早餐.他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子.每种蒸笼都有非常多笼,可以认为是无限笼.每当有顾客想买X个包子,卖包子的大叔就会迅速 ...

  3. 蓝桥杯java第八届第四题--魔方状态

    标题:魔方状态二阶魔方就是只有2层的魔方,只由8个小块组成. 如图p1.png所示.小明很淘气,他只喜欢3种颜色,所有把家里的二阶魔方重新涂了颜色,如下:前面:橙色 右面:绿色 上面:黄色 左面:绿色 ...

  4. 蓝桥杯java第八届第三题--承压计算

    标题:承压计算X星球的高科技实验室中整齐地堆放着某批珍贵金属原料.每块金属原料的外形.尺寸完全一致,但重量不同. 金属材料被严格地堆放成金字塔形.75 87 8 89 2 7 28 1 4 9 18 ...

  5. 蓝桥杯java第八届第六题--最大公共子串

    标题:最大公共子串最大公共子串长度问题就是: 求两个串的所有子串中能够匹配上的最大长度是多少.比如:"abcdkkk" 和 "baabcdadabc", 可以找 ...

  6. 蓝桥杯java第八届第五题--取数位

    标题:取数位求1个整数的第k位数字有很多种方法. 以下的方法就是一种.public class Main {static int len(int x){if(x<10) return 1;ret ...

  7. 2017年 第八届蓝桥杯 Java B组真题整理

    2017年 第八届蓝桥杯 Java B组真题整理 1.购物单 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞.这不,XX大促销又 ...

  8. java蓝桥杯凑算是,第七届蓝桥杯JAVA B组真题解析-凑算式(第三题)

    第七届蓝桥杯JAVA B组真题解析-凑算式(第三题) 凑算式 A+B/C+DEF/GHI =10 (如果显示有问题,可以参见[图1.jpg]) 这个算式中AI代表19的数字,不同的字母代表不同的数字. ...

  9. 2013第四届蓝桥杯Java组省赛题解析

    2013第四届蓝桥杯Java组省赛题解析 目录 第一题:高斯日记 第二题:马虎的算式 第三题:第39级台阶 第四题:黄金连分数 ​第五题:前缀判断 第六题:三部排序 ​第七题:错误票据 第八题:翻硬币 ...

最新文章

  1. Android Eclipse之Git插件安装、配置、提交、修改、冲突、查看历史、覆盖。
  2. 关于form标题提交的应用技巧(-)
  3. tf.estimator的用法
  4. linux图形登陆报拒绝权限,Linux-权限被拒绝?
  5. Angularjs相关文章地址
  6. 偶然发现静态函数与性能一例
  7. 国内外常用Linux服务器控制面板介绍
  8. android 4G产品4G网络问题记录
  9. 计算机c盘d盘不显示了怎么办,我的电脑打开里头的C盘D盘的图标怎么显示不了啊......
  10. Spring boot中使用Swagger2
  11. Tomcat配置https访问SSL证书(pfx文件)
  12. 《机器学习》 周志华学习笔记第七章 贝叶斯分类器(课后习题)python 实现
  13. 检测 SAP Spartacus 服务器端渲染页面响应时间的两种办法
  14. 量子计算机与新型传感器,新型量子传感器为超导量子计算机发展开辟了新路径...
  15. Best Cow Line(POJ-3617)
  16. assert()和panic()
  17. 基于大数据平台的毕业设计
  18. 尺度、空间异质性、干扰、景观多样性、景观连接度,对其概念的理解
  19. 非常哇塞的 SpringBoot性能优化长文!
  20. 动手下载网易课程视频 -- 正式下载

热门文章

  1. 实验探究 ioremap
  2. linux下mkdir头文件_Linux部分常用命令学习记录
  3. 出块过程 (1)close发送消息
  4. C++ Primer 5th笔记(chap 13 拷贝控制)拷贝赋值函数
  5. 使用kuberbuilder创建工程示例
  6. [ARM-assembly]-ARMV8的exclusive和inexclusive的介绍
  7. 关于c语言结构体偏移的一点思考
  8. Android用shareUserID实现多个Activity显示在同一界面
  9. 【攻防世界019】SignIn
  10. 【网络安全】如何使用keimpx检测网络环境中的有效凭证