首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数字日历

数字日历
EN

Code Golf用户
提问于 2017-09-30 14:40:03
回答 2查看 448关注 0票数 6

给定日期,在数字日历上输出当前日期的X和Y位置。数字日历是在您单击计算机时钟(至少在windows上)时显示的日历,它看起来如下所示:

假设给定日期为25.09.2017,则结果为(2,5),因为今年第九个月的第25天位于第二列和第五行。

请注意,如果日期是29.08.2017,我们不能使用从上面的日历,而是一个新的8月份。灰色的数字只是为了填补空白,直到这个月真正开始的一天。

输入

一个日期,任何合理的格式。

输出

指定日期的日期位于其各自日历中的点或坐标。这些应该是一个索引。

规则

  • 这是密码-高尔夫,任何语言中最短的代码都是赢家。
  • 标准漏洞是被禁止的。

附加备注

日历的第一栏总是星期天。

以下是2017年1月和9月的数字日历:

测试用例

输入:06.02.2018 (DD.MM.YYYY)2018.02.06 (YYYY.MM.DD)

输出:(3,2)

输入:12.11.1982 (DD.MM.YYYY)1982.11.12 (YYYY.MM.DD)

输出:(6,2)

输入:01.01.2030 (DD.MM.YYYY)2030.01.01 (YYYY.MM.DD)

输出:(3,1)

输入:13.06.3017 (DD.MM.YYYY)3017.06.13 (YYYY.MM.DD)

输出:(6,3)

EN

回答 2

Code Golf用户

发布于 2017-09-30 15:43:53

Mathematica,83字节

新规则:星期日

开始

代码语言:javascript
运行
复制
{s=Min@Position[(d=DayName)@{6,1,#}&/@Range@7,d@DateObject@{##}],⌈(#3-s)/7⌉+1}&   

-来自@Misha Lavrov的5个字节

输入表

2030年年,1,1 yyyy dd

票数 3
EN

Code Golf用户

发布于 2017-09-30 16:14:57

TI-Basic (84+),27个字节(50个字符)

代码语言:javascript
运行
复制
:Prompt Y,M,D
:dayOfWk(Y,M,D
:{Ans,2+int(7⁻¹(D-Ans
票数 2
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/144104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档