九层之台,起于垒土,你我皆是垒土人✔
愿我的文章对你有所帮助!
欢迎===关注===点赞===评论,共同学习,共同进步!
一、题目(填空题)
小蓝每天都锻炼身体。
正常情况下,小蓝每天跑 1 千米。如果某天是周一或者月初(1 日),为了激励自己,小蓝要跑 2 千米。如果同时是周一或月初,小蓝也是跑 2 千米。
小蓝跑步已经坚持了很长时间,从 2000 年 1 月 1 日周六(含)到 2020年 10 月 1日周四(含)。请问这段时间小蓝总共跑步多少千米?
题外话:多多跑步的确是对个人身体素质和精神面貌作用比较大的,还能一定程度上变帅和提升素质,俺大一大二就跑了挺多步,最多的时候一个月240多公里,也就是平均每天8公里,最多的时候一天早中晚跑了17公里,有的时候是真的拿命跑,无比痛苦,却又畅快!!
校运会因为一点意外最后没参加,如果参加5000米拿个本科组前三问题不大。愿你我永远在路上!
一张图纪念自己曾经挥洒无数汗水的跑步!
解题思路:1 、本题看似简单,实际上不仔细推敲和思考也是颇有味道的,我也是参考了部分他人答案分析出来的。
2、需要注意的几个隐含条件:
- 平年闰年的区分
 - 闰年2月为29天,平年28天
 - 1、3、5、7、8、 10、 12月为31天
 - 月初和周一都是跑两公里
 
 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);
    } 
发文不易,恳请大佬们高抬贵手!
点赞:随手点赞是种美德,是大佬们对于本人创作的认可!
评论:往来无白丁,是你我交流的的开始!
收藏:愿君多采撷,是大佬们对在下的赞赏!




















