文档章节

下一秒

 笨拙的小Q
发布于 2016/08/13 14:51
字数 318
阅读 10
收藏 0
import java.util.ArrayList;
import java.util.Scanner;
/**
 * 华为机试 下一秒
 * @author qxl
 *
 */
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while(sc.hasNext()){
			String s = sc.nextLine();
			System.out.println(nextSecond(s));
		}
	}
	public static String nextSecond(String s){
		s = s.replace(" ", "/");
		s = s.replace(":", "/");
		String[]str = s.split("/");
		ArrayList<Integer>list1 = new ArrayList<Integer>();
		list1.add(1);
		list1.add(3);
		list1.add(5);
		list1.add(7);
		list1.add(8);
		list1.add(10);
		list1.add(12);
		ArrayList<Integer>list2 = new ArrayList<Integer>();
		list2.add(4);
		list2.add(6);
		list2.add(9);
		list2.add(11);
		int i1 = Integer.parseInt(str[str.length-1])+1;//秒
		if(i1<10){
			str[str.length-1] = "0" + i1;
		}
		if(i1==60){
			str[str.length-1] = "00";
			int i2 = Integer.parseInt(str[str.length-2])+1;//分
			if(i2<10){
				str[str.length-2] = "0" + i2;
			}
			if(i2==60){
				str[str.length-2] = "00";
				int i3 = Integer.parseInt(str[str.length-3])+1;//时
				if(i3<10){
					str[str.length-3] = "0" + i3;
				}
				if(i3==24){
					str[str.length-3] = "00";
					int i4 = Integer.parseInt(str[2])+1;//日
					if(i4<10){
						str[2] = "0" + i4;
					}
					int i5 = Integer.parseInt(str[1]);//月
					int i6 = Integer.parseInt(str[0]);//年
					if(list1.contains(i5)){
						if(i4==32){
							str[2] = "01";
							i5 = i5+1;
						}
					}
					if(list2.contains(i5)){
						if(i4==31){
							str[2] = "01";
							i5 = i5+1;
						}
					}
					if(i5==2){
						//能被4整除但不能被100整除,或能被400整除的年份为闰年,闰年二月有29天
						if((i6%4==0&&i6%100!=0)||i6%400==0){
							if(i4==30){
								str[2] = "01";
								i5 = i5+1;
							}
						}else{
							if(i4==29){
								str[2] = "01";
								i5 = i5+1;
							}
						}
					}
					if(i5<10){
						str[1] = "0" + i5;
					}
					if(i5==12){
						str[1] = "01";
						i6 = i6+1;
					}
				}
			}
		}
		StringBuffer sb = new StringBuffer();
		for(String ss:str){
			sb.append(ss);
		}
		sb.insert(4, '/');
		sb.insert(7, '/');
		sb.insert(10, ' ');
		sb.insert(13, ':');
		sb.insert(16, ':');
		return sb.toString();
	}

}

 

© 著作权归作者所有

共有 人打赏支持
上一篇: 自动售货机
下一篇: 索引
粉丝 2
博文 57
码字总数 27842
作品 0
南京
私信 提问
Comodo为什么拦截 一秒vpn这个软件,如何让其不拦截

Comodo为什么拦截 一秒vpn这个软件,一秒vpn是一个免费的软件,之前comodo一直没有拦截它,现在最新版5。0一运行,就会导致浏览器主页被改成http://www.2345.com/?k46893890,但是这个行为应...

kdybdsx
2014/02/08
960
0
javascript小技巧:同步服务器时间、同步倒计时

之前在网上看到有人提问,如何在页面上同步显示服务器的时间,其实实现方法有几种,可能一般人立马就想到可以使用Ajax每隔一秒去请求服务器,然后将服务器获取到时间显示在页面上,这样虽然能...

技术小牛人
2017/11/15
0
0
java 两个list交替存储

比如现有两个List a 与 b 。首先把并发过来的数据放入a, 下一秒再把并发过来的数据放入b,此时对a进行迭代处理,处理完后清空a集合,再下一秒把数据放入a,对b进行迭代处理并清空。如此反复...

林晴朗
2012/11/05
1K
5
python如何动态获取一个目录下的新生文件

描述: 假设有一个目录文件夹Files,在该文件夹中,会时时的动态生成新的文件(比如,前一秒只有文件a,后一秒就会增加新的文件b,再下一秒就会生成新的文 件c,......),现在想通过写一段程...

md2python
2015/06/01
1K
2
基于间隔推送全量更新数据状态的设计方法

假如有个直播间,在数据有更新的时候,能及时反映在客户端上。通信方式来说,有两种: 1、拉取模式。 2、推送+拉取模式(或者纯推送) 拉取模式,技术简单。但轮询间隔设置比较难;如果设置得...

郑浩锋
2017/11/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

错误: 找不到或无法加载主类

在IDEA的使用过程中,经常断掉服务或者重启服务,最近断掉服务重启时突然遇到了一个启动报错: 错误:找不到或无法加载主类 猜测:1,未能成功编译; 尝试:菜单---》Build---》Rebuild Pro...

安小乐
18分钟前
1
0
vue路由传参,刷新页面,引发的bug

最近遇到一个bug 通过vue路由跳转到页面, 然后接参控制(v-if ),成功显示 而刷新页面,显示失败。 苦苦地找了半天原因,打印参数发现正确,再打印下类型......,路由跳过来会保持传参时的...

hanbb
19分钟前
0
0
【58沈剑 架构师之路】InnoDB,select为啥会阻塞insert?

MySQL的InnoDB的细粒度行锁,是它最吸引人的特性之一。 但是,如《InnoDB,5项最佳实践》所述,如果查询没有命中索引,也将退化为表锁。 InnoDB的细粒度锁,是实现在索引记录上的。 一,Inn...

张锦飞
22分钟前
0
0
冒泡,选择和插入排序比较

/** * 冒泡排序,两层嵌套循环,内层局部比较后,找出最大或者最小数据并交换数据,使其局部有序,外层用于比较剩余元素,相较于选择排序,选择排序相当于是冒泡的一个优化版本(减少了交换...

strict_nerd
23分钟前
0
0
html内联(行内)元素、块级(块状)元素和行内块元素分类

HTML可以将元素分类方式分为内联(行内)元素、块级(块状)元素和行内块元素三种。 注:HTML是标签语言,那么既然是标签,就可以自己定义一些自己元素(如<wode>自定义的元素</wode>等),自...

NB-One
29分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部