蓝桥杯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)); } } }
蓝桥杯java第八届第七题--日期问题相关推荐
- 蓝桥杯java第八届第十题--k倍区间
标题: k倍区间给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区 ...
- 蓝桥杯java第八届第八题--包子凑数
标题:包子凑数小明几乎每天早晨都会在一家包子铺吃早餐.他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子.每种蒸笼都有非常多笼,可以认为是无限笼.每当有顾客想买X个包子,卖包子的大叔就会迅速 ...
- 蓝桥杯java第八届第四题--魔方状态
标题:魔方状态二阶魔方就是只有2层的魔方,只由8个小块组成. 如图p1.png所示.小明很淘气,他只喜欢3种颜色,所有把家里的二阶魔方重新涂了颜色,如下:前面:橙色 右面:绿色 上面:黄色 左面:绿色 ...
- 蓝桥杯java第八届第三题--承压计算
标题:承压计算X星球的高科技实验室中整齐地堆放着某批珍贵金属原料.每块金属原料的外形.尺寸完全一致,但重量不同. 金属材料被严格地堆放成金字塔形.75 87 8 89 2 7 28 1 4 9 18 ...
- 蓝桥杯java第八届第六题--最大公共子串
标题:最大公共子串最大公共子串长度问题就是: 求两个串的所有子串中能够匹配上的最大长度是多少.比如:"abcdkkk" 和 "baabcdadabc", 可以找 ...
- 蓝桥杯java第八届第五题--取数位
标题:取数位求1个整数的第k位数字有很多种方法. 以下的方法就是一种.public class Main {static int len(int x){if(x<10) return 1;ret ...
- 2017年 第八届蓝桥杯 Java B组真题整理
2017年 第八届蓝桥杯 Java B组真题整理 1.购物单 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞.这不,XX大促销又 ...
- java蓝桥杯凑算是,第七届蓝桥杯JAVA B组真题解析-凑算式(第三题)
第七届蓝桥杯JAVA B组真题解析-凑算式(第三题) 凑算式 A+B/C+DEF/GHI =10 (如果显示有问题,可以参见[图1.jpg]) 这个算式中AI代表19的数字,不同的字母代表不同的数字. ...
- 2013第四届蓝桥杯Java组省赛题解析
2013第四届蓝桥杯Java组省赛题解析 目录 第一题:高斯日记 第二题:马虎的算式 第三题:第39级台阶 第四题:黄金连分数 第五题:前缀判断 第六题:三部排序 第七题:错误票据 第八题:翻硬币 ...
最新文章
- Android Eclipse之Git插件安装、配置、提交、修改、冲突、查看历史、覆盖。
- 关于form标题提交的应用技巧(-)
- tf.estimator的用法
- linux图形登陆报拒绝权限,Linux-权限被拒绝?
- Angularjs相关文章地址
- 偶然发现静态函数与性能一例
- 国内外常用Linux服务器控制面板介绍
- android 4G产品4G网络问题记录
- 计算机c盘d盘不显示了怎么办,我的电脑打开里头的C盘D盘的图标怎么显示不了啊......
- Spring boot中使用Swagger2
- Tomcat配置https访问SSL证书(pfx文件)
- 《机器学习》 周志华学习笔记第七章 贝叶斯分类器(课后习题)python 实现
- 检测 SAP Spartacus 服务器端渲染页面响应时间的两种办法
- 量子计算机与新型传感器,新型量子传感器为超导量子计算机发展开辟了新路径...
- Best Cow Line(POJ-3617)
- assert()和panic()
- 基于大数据平台的毕业设计
- 尺度、空间异质性、干扰、景观多样性、景观连接度,对其概念的理解
- 非常哇塞的 SpringBoot性能优化长文!
- 动手下载网易课程视频 -- 正式下载
热门文章
- 实验探究 ioremap
- linux下mkdir头文件_Linux部分常用命令学习记录
- 出块过程 (1)close发送消息
- C++ Primer 5th笔记(chap 13 拷贝控制)拷贝赋值函数
- 使用kuberbuilder创建工程示例
- [ARM-assembly]-ARMV8的exclusive和inexclusive的介绍
- 关于c语言结构体偏移的一点思考
- Android用shareUserID实现多个Activity显示在同一界面
- 【攻防世界019】SignIn
- 【网络安全】如何使用keimpx检测网络环境中的有效凭证