【java】跑步锻炼_Calendar

题目链接 

https://www.lanqiao.cn/problems/597/learning/?contest_id=87

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝每天都锻炼身体。

正常情况下,小蓝每天跑 1 千米。如果某天是周一或者月初(1 日),为了激励自己,小蓝要跑 2千米。如果同时是周一或月初,小蓝也是跑 2 千米。

小蓝跑步已经坚持了很长时间,从 2000 年 1 月 1 日周六(含)到 2020 年 10 月 1 日周四(含)。请问这段时间小蓝总共跑步多少千米?

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

题目分析

Calendar calendar = Calendar.getInstance();

calendar.set(Calendar.YEAR, 2000);
calendar.set(Calendar.MONTH, 0);//一定要这样注意!!月份从0-11
calendar.set(Calendar.DAY_OF_MONTH, 1);

calendar.get(Calendar.DAY_OF_WEEK) == 2; //这里的星期从1-6-7分别是2-7-1

扫描二维码关注公众号,回复: 14784781 查看本文章
import java.util.Calendar;
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
import java.time.LocalDate;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.YEAR, 2000);
        calendar.set(Calendar.MONTH, 0);//一定要这样注意!!
        calendar.set(Calendar.DAY_OF_MONTH, 1);
        int sum = 0;
        while (true) {
            if (calendar.get(Calendar.YEAR) == 2020 && calendar.get(Calendar.MONTH) == 9 && calendar.get(Calendar.DAY_OF_MONTH) == 2) {
                break;
            }                                                                      //周一为2,周日为1
            if (calendar.get(Calendar.DAY_OF_MONTH) == 1 || calendar.get(Calendar.DAY_OF_WEEK) == 2) {
                sum += 2;
            } else sum += 1;
            calendar.add(Calendar.DATE, 1);
        }
        System.out.println(sum);

    }
}

猜你喜欢

转载自blog.csdn.net/weixin_61082895/article/details/129836052