蓝桥杯入门即劝退(五)跑断腿的小蓝

九层之台,起于垒土,你我皆是垒土人✔
愿我的文章对你有所帮助!
欢迎===关注===点赞===评论,共同学习,共同进步!

一、题目(填空题)

小蓝每天都锻炼身体。

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

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

题外话多多跑步的确是对个人身体素质精神面貌作用比较大的,还能一定程度上变帅和提升素质,俺大一大二就跑了挺多步,最多的时候一个月240多公里,也就是平均每天8公里,最多的时候一天早中晚跑了17公里,有的时候是真的拿命跑,无比痛苦,却又畅快!!

校运会因为一点意外最后没参加,如果参加5000米拿个本科组前三问题不大。愿你我永远在路上!

一张图纪念自己曾经挥洒无数汗水的跑步!

3e926bb62c604d5a93b1ea688cb51f87.png

解题思路:1 、本题看似简单,实际上不仔细推敲和思考也是颇有味道的,我也是参考了部分他人答案分析出来的。

2、需要注意的几个隐含条件:

  1. 平年闰年的区分
  2. 闰年2月为29天,平年28天
  3. 1、3、5、7、8、 10、 12月为31天
  4. 月初和周一都是跑两公里

6f5585f8177b45cf8e55acc5d1eca388.png tip:因为有一个地方搞错了参数,导致我的答案一直有偏差,哭死,后来bug找到了!

代码实现:

public  static void main(String args[]) {
        int RunDistance=0;
        int Start=6;//开始日期为周六
        int Months[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};//月份天数赋值

        for (int Years= 2000; Years <=2020; Years++)
        {
            if(Years%4==0&&Years%100!=0||Years%400==0)
                Months[1]=29;//闰年2月28天
            else
                Months[1]=28;
            for(int x=0;x<12;x++) {
                for (int Days = 1; Days <=Months[x]; Days++) {
                    if(Start==8)//如果是周八,就是周一
                    {
                        Start=1;
                    }
                    if (Start ==1 || Days == 1) {//当满足周一或月初的条件就跑两公里
                        RunDistance +=2;
                    }
                    else
                        RunDistance += 1;
                         Start++;
                    if (Years==2020 && x==9&&Days==1)//到时间了
                    {
                        System.out.println(RunDistance);
                        break;
                    }
                }
            }
        }
        //System.out.println(RunDistance);

    }

发文不易,恳请大佬们高抬贵手!


点赞:随手点赞是种美德,是大佬们对于本人创作的认可!


评论:往来无白丁,是你我交流的的开始!


收藏:愿君多采撷,是大佬们对在下的赞赏!

  • 22
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 27
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kook小辉的进阶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值