跑步锻炼

题目描述

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

小蓝每天都锻炼身体。

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

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

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M
#include <iostream>
using namespace std;
int nian(int a)
{
    if ((a % 4 == 0 && a % 100 != 0) || a % 400 == 0)
    {
        return 1;
    }
    else
        return 0;
}
int main()
{
    int a[12] = { 31,29,31,30,31,30,31,31,30,31,30,31 };//润
    int b[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
    int y, m, d, sum = 0, week = 6;
    for (y = 2000; y <= 2020; y++)
    {
        for (m = 0; m < 12; m++)
        {
            if (nian(y))
            {
                for (d = 1; d <= a[m]; d++, week++)
                {
                    if (d == 1 || week % 7 == 1)
                        sum += 2;
                    else
                        sum++;
                    week %= 7;
                    //cout << week << " ";
                    if (y == 2020 && m == 9 && d == 1)
                    {
                        cout << sum;
                        return 0;
                    }
                }
            }
            else
            {
                for (d = 1; d <= b[m]; d++, week++)
                {
                    if (d == 1 || week % 7 == 1)
                        sum += 2;
                    else
                        sum++;
                    week %= 7;//判断week
                    //cout << week << " ";
                    if (y == 2020 && m == 9 && d == 1)
                    {
                        cout << sum;
                           return 0;
                     }
                }
            }
            
        }
    }
    return 0;
}

 

上一篇:123


下一篇:redis相关