输入:
日期(含dd
,MM
和yyyy
)。日期对象或三个独立的整数也可用作输入。
输出:
每个部分(dd
,MM
和yyyy
)单独恢复,比四舍五入到最接近的有效日期。
例如(格式为dd-MM-yyyy
):
21-10-2016
变为12-01-6102
挑战规则:
- 只有
dd
,MM
,yyyy
是有效的,但为了和您使用独立的符号是你自己的选择。
因此,这些都是一些有效的格式例子:dd-MM-yyyy
;MM/dd/yyyy
;yyyy MM dd
;ddMMyyyy
等
是一些无效的格式示例:dd MMM yyyy
;dd-MM-'yy
; 等等 - 如果您的语言支持日期对象或三个单独的整数参数,也可以选择仅输入日期对象,而不是代表日期的字符串。
- 请说明您使用的日期格式!(并且输入和输出必须采用相同的格式。)还可以输出Date对象,只要它可以处理以下所有测试用例和质询规则即可。
- 从儒略历到公历的过渡对此挑战被忽略了。因此,
1582
对于只是一个有效的反向年份2851
。
请参阅挑战信息/所有有效年,月和日的提示。 - 由于您无法将2月与其他任何月份相反,因此您不必担心worry年。
所有倒转的年,月和日:
- 年份可以任意倒转,范围从0001(倒数为
1000
)到9999(剩余数9999
)。(因此0000
这不是有效的输入,也没有测试用例。) - 您将要撤消的唯一月份是:一月(从十月/撤消
10
);十月(与一月/相反01
);11月(仍为11月/11
);和月(从隔月扭转/02
- ,)。09
12
- 您将撤消的唯一日期是:01(从撤消
10
),02(从撤消20
),03(从撤消30
),10(从撤消01
),11(剩余11
),12(从撤消21
),13(从撤消31
) ,20(从反向02
),21(从反向12
),22(剩余22
),30(03
与11月的31反向或相同!),31(从04
-09
/13
- 反向19
/23
-29
)。
通用规则:
- 这是代码高尔夫球,因此最短答案以字节为单位。
不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 - 标准规则适用于您的答案,因此允许您使用STDIN / STDOUT,具有适当参数的函数/方法以及return语句/输出,完整程序。你的来电。
- 默认漏洞是禁止的。
- 如果可能的话,请添加一个带有测试代码的链接。
- 另外,如有必要,请添加说明。
测试用例(dd-MM-yyyy
格式):
21-07-2016 -> 12-12-6102
12-11-1991 -> 21-11-1991
01-01-2000 -> 10-10-0002
27-08-1875 -> 31-12-5781
18-12-2010 -> 31-12-0102
13-01-1981 -> 31-10-1891
04-11-1671 -> 30-11-1761 // Semi-tricky case, since November has 30 days
28-11-2036 -> 30-11-6302 // Semi-tricky case, since November has 30 days
14-06-1855 -> 31-12-5581
30-10-9999 -> 03-01-9999
01-01-2851 -> 10-10-1582
70
环绕,而年份又增加了。
10-10-2
在第三种情况下有效的输出?
21-07-2016
已还原12-70-6102
,将其舍入为12-12-6102
。不确定如何获得结果##-10-6107
..