国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

藍(lán)橋杯 算法提高 日期計(jì)算

2019-11-11 04:06:22
字體:
供稿:網(wǎng)友

 算法提高 日期計(jì)算  時(shí)間限制:1.0s   內(nèi)存限制:256.0MB    問題描述  已知2011年11月11日是星期五,問YYYY年MM月DD日是星期幾?注意考慮閏年的情況。尤其是逢百年不閏,逢400年閏的情況。輸入格式  輸入只有一行  YYYY MM DD輸出格式  輸出只有一行  W數(shù)據(jù)規(guī)模和約定  1599 <= YYYY <= 2999  1 <= MM <= 12  1 <= DD <= 31,且確保測試樣例中YYYY年MM月DD日是一個(gè)合理日期  1 <= W <= 7,分別代表周一到周日樣例輸入2011 11 11樣例輸出5

思路:算出2011年11月11日到1599年1月1日的天數(shù),再算出要求的日期到1599年1月1日的天數(shù),2個(gè)作差對(duì)7取余即可求出星期幾

AC代碼:

import java.util.Scanner;public class Main {		static int[] mon = {0,31,28,31,30,31,30,31,31,30,31,30,31};	public static void main(String[] args) {		Scanner in = new Scanner(System.in);		int year = in.nextInt();		int month = in.nextInt();		int day = in.nextInt();		int sum1 = cal(2011,11,11);		int sum2 = cal(year,month,day);		if(sum1 <= sum2) {			int sum = (sum2 - sum1 + 12) % 7;			if(sum == 0)				sum = 7;			System.out.PRintln(sum);		} else {			int sum = (sum1 - sum2) % 7;			if(sum == 0)				System.out.println(5);			else if(sum == 1)				System.out.println(4);			else if(sum == 2)				System.out.println(3);			else if(sum == 3)				System.out.println(2);			else if(sum == 4)				System.out.println(1);			else if(sum == 5)				System.out.println(7);			else if(sum == 6)				System.out.println(6);		}	}		public static int cal(int year,int month,int day) {		int sum = 0;		//注意這里是i<year		for(int i=1599; i<year; i++) {			if((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0)) {				sum += 366;			} else {				sum += 365;			}		}		//注意這里是i<month		for(int i=1; i<month; i++) {			//是閏年的第二月,天數(shù)是29天			if(((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) && i == 2)				sum += mon[i] + 1;			else				sum += mon[i];		}		sum += day;		return sum;	}}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乌海市| 商都县| 南宁市| 中山市| 长春市| 若尔盖县| 仁寿县| 阳城县| 乌兰察布市| 犍为县| 赣榆县| 陆良县| 哈巴河县| 左权县| 富顺县| 民权县| 北宁市| 伊宁县| 水富县| 土默特右旗| 会泽县| 根河市| 商河县| 彰武县| 济宁市| 青铜峡市| 溧阳市| 金乡县| 洞口县| 广汉市| 莲花县| 衢州市| 建宁县| 鞍山市| 新疆| 渑池县| 左云县| 益阳市| 石屏县| 关岭| 茂名市|