[プログラミング問題]一年の中の何日目を計算しますか?


import java.util.Scanner;

/**  :
 * [   ]         
 * 
       ?
    、 、 ,           。

     :
        (1<=Y<=3000)、 (1<=M<=12)、 (1<=D<=31)。

     :
            ,         ,
       ,  Input   、 、         。

   :
   
 1990 9 20
 2000 5 1

   
 263
 122
 *
 *
 *           :
 * 1.           main   ,        ,    leetcode  ~
 * 2.        print   return  。。。。
 * 3.     scanner 。
 *                     ,     OJ。
 *                 ,         ,             。      !
 */
public class NvWa {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int year = scanner.nextInt();//     scanner         。。。
        int month = scanner.nextInt();
        int day = scanner.nextInt();
        int leap = 0;
        int sum = 0;
        switch (month) //             
        {
            case 1:
                sum = 0;
                break;
            case 2:
                sum = 31;
                break;
            case 3:
                sum = 59;
                break;
            case 4:
                sum = 90;
                break;
            case 5:
                sum = 120;
                break;
            case 6:
                sum = 151;
                break;
            case 7:
                sum = 181;
                break;
            case 8:
                sum = 212;
                break;
            case 9:
                sum = 243;
                break;
            case 10:
                sum = 273;
                break;
            case 11:
                sum = 304;
                break;
            case 12:
                sum = 334;
                break;
            default:
                System.out.println("data error");
                break;
        }
        sum = sum + day; //        
        if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))//       
            leap = 1;
        if (leap == 1 && month > 2)//          2,        
            sum++;
        System.out.println(sum);//        。。。。。 !
    }
}