蓝桥杯:跑步锻炼

题目

题目描述

小蓝每天都锻炼身体。

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

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

思路

思路是遍历每天,注意看是不是闰年以及星期的遍历

代码

cpp 复制代码
#include<iostream>
using namespace std;
int main()
{
    int months[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
    int y,m,d;
    int ans = 6;//表示星期
    int cnt = 0;
    for(y = 2000;y <= 2020;y++){
        if(y%4 == 0&&y%100 != 0||y%400 == 0)
            months[2] = 29;
        else
            months[2] = 28;
        for(m = 1;m <= 12;m++){
            for(d = 1;d <= months[m];d++){
                cnt++;
                if(ans == 8) 
                    ans = 1;
                if(ans == 1||d == 1)
                    cnt++;
                ans++;
                if(y == 2020&&m == 10&&d == 1)
                    cout<<cnt;
            }
        }
    }
    return 0;
}

总结

  • 注意闰年以及星期遍历
相关推荐
小字节,大梦想31 分钟前
【C++】二叉搜索树
数据结构·c++
吾名招财32 分钟前
yolov5-7.0模型DNN加载函数及参数详解(重要)
c++·人工智能·yolo·dnn
我是哈哈hh1 小时前
专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结
服务器·数据结构·c++·算法·机器学习·深度优先·剪枝
憧憬成为原神糕手1 小时前
c++_ 多态
开发语言·c++
郭二哈1 小时前
C++——模板进阶、继承
java·服务器·c++
Tisfy1 小时前
LeetCode 2187.完成旅途的最少时间:二分查找
算法·leetcode·二分查找·题解·二分
挥剑决浮云 -1 小时前
Linux 之 安装软件、GCC编译器、Linux 操作系统基础
linux·服务器·c语言·c++·经验分享·笔记
Mephisto.java1 小时前
【力扣 | SQL题 | 每日四题】力扣2082, 2084, 2072, 2112, 180
sql·算法·leetcode
robin_suli1 小时前
滑动窗口->dd爱框框
算法
丶Darling.1 小时前
LeetCode Hot100 | Day1 | 二叉树:二叉树的直径
数据结构·c++·学习·算法·leetcode·二叉树