1. 程式人生 > >CCF之日期計算(java)

CCF之日期計算(java)

試題編號: 201509-2
試題名稱: 日期計算
時間限制: 1.0s
記憶體限制: 256.0MB
問題描述: 問題描述   給定一個年份y和一個整數d,問這一年的第d天是幾月幾日?
  注意閏年的2月有29天。滿足下面條件之一的是閏年:
  1) 年份是4的整數倍,而且不是100的整數倍;
  2) 年份是400的整數倍。 輸入格式   輸入的第一行包含一個整數y,表示年份,年份在1900到2015之間(包含1900和2015)。
  輸入的第二行包含一個整數d,d在1至365之間。 輸出格式   輸出兩行,每行一個整數,分別表示答案的月份和日期。 樣例輸入 2015
80 樣例輸出 3
21 樣例輸入 2000
40 樣例輸出 2
9

解題程式碼(java):

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scanner=new Scanner(System.in);
		int Y=scanner.nextInt();
		int D=scanner.nextInt();
		int[]arr={31,28,31,30,31,30,31,31,30,31,30,31};
		int month=1;
		if(Y%4==0&&Y%100!=0||Y%400==0){
			arr[1]=29;
		}	
	    for(int i = 0; D -arr[i] > 0; ++i){
	        D-= arr[i];
	        ++month;
	    }
		System.out.println(month);
		System.out.println(D);
		
	}

}