zoukankan      html  css  js  c++  java
  • CSP认证201509-2-日期计算-(Java)100分

    日期计算

    试题编号: 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满分
    在这里插入图片描述

    Java代码

    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            int year = sc.nextInt();
            int days = sc.nextInt();
            int[] mon_days = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
            if ( year % 4 == 0 && year % 100 != 0 || year % 400 == 0 )
                mon_days[1]++;
            int[] year_day = new int[13];
            for ( int i = 1; i <= 12; i++ )
                year_day[i] = year_day[i-1] + mon_days[i-1];
    
            int res_mon = 0, res_day = 0, i = 1;
            for ( ; i <= 12 && days > year_day[i]; i++ );
            res_mon = i;
            res_day = days - year_day[i-1];
    
            System.out.println(res_mon + "
    " + res_day);
            sc.close();
        }
    }
    
  • 相关阅读:
    嵌入式Linux系统的构成和启动过程
    Linux 设备驱动之字符设备
    Linux的inode的理解
    flannel流程解析
    http2协议的理解
    多线程和单线程的理解
    User Token简单总结
    前端组件开发方法论
    Electron踩坑记录
    2020年工作总结
  • 原文地址:https://www.cnblogs.com/jiaohuadehulike/p/14294965.html
Copyright © 2011-2022 走看看