luogu#P12240. [蓝桥杯 2023 国 C] 定时任务

[蓝桥杯 2023 国 C] 定时任务

题目描述

Cron 表达式在定时任务中经常被使用,在这里我们用了一种简化后的版本 SimpleCron 表达式:SimpleCron 表达式是一个具有时间含义的字符串,字符串以 44 个空格隔开,分为 55 个域,格式为 X X X X XX \ X \ X \ X \ X,其中 XX 是一个域的占位符。55 个域从左至右依次为秒 (059)(0 - 59)、分钟 (059)(0 - 59)、小时 (023)(0 - 23)、日期 (131)(1 - 31)、月份 (112)(1 - 12),其中括号内为他们各自的取值范围。同时域内取值也可以使用一些特殊字符(每个域内只能使用一种特殊字符):

  1. 特殊字符 \tt{*}(ASCII 码为 4242)表示所有可能的值。例如:在分钟域内表示每一分钟;在日期域内表示月内的每一天。
  2. 特殊字符 ,\tt{,}(ASCII 码为 4444)表示列出枚举值。例如:在秒域内,3,203,20 表示分别在 3 秒和 20 秒执行一次任务。
  3. 特殊字符 \tt{-}(ASCII 码为 4545)表示范围,可以视为连续的若干个枚举值。例如:151 - 5 等价于 1,2,3,4,51,2,3,4,5

例如,

421,3,15131421,3,151 - 31 *

表示的含义是每个月份中的每一天中的 01:02:0401:02:0403:02:0403:02:0415:02:0415:02:04 这三个时刻各执行一次,在 20232023 年一共会执行 10951095 次。

现在给出你一个合法的 SimpleCron 表达式,其中用到的所有数字均没有前导零。请问在 20232023 一整年当中,使用了这个表达式的定时任务总计会执行多少次?

输入格式

输入一行,包含一个 SimpleCron 字符串。

输出格式

输出一行,包含一个整数表示答案。

4 2 1,3,15 1-31 *
1095

提示

评测用例规模与约定

对于所有评测用例,00 \leq 秒域的取值 59\leq 5900 \leq 分钟域的取值 \leq 595900 \leq 小时域的取值 23\leq 2311 \leq 日期域的取值 31\leq 3111 \leq 月份域的取值 12\leq 12