This week, it is your turn to take notes in the department's planning meeting. In this meeting, your boss will set delivery dates for all open work items. Annoyingly, instead of specifying the actual delivery dates, your boss will only describe them in an abbreviated format. As many of your colleagues won't be familiar with this corporate lingo, you'll need to convert these delivery date descriptions to actual delivery dates.
Your task is to convert delivery date descriptions to actual delivery dates, based on when the meeting started.
There are two types of delivery date descriptions:
There are three fixed delivery date descriptions:
"NOW"
"ASAP"
(As Soon As Possible)"EOW"
(End Of Week)The following table shows how to translate them:
Description | Meeting start | Delivery date |
---|---|---|
"NOW" |
- | Two hours after the meeting started |
"ASAP" |
Before 13:00 | Today at 17:00 |
"ASAP" |
After or at 13:00 | Tomorrow at 13:00 |
"EOW" |
Monday, Tuesday, or Wednesday | Friday at 17:00 |
"EOW" |
Thursday or Friday | Sunday at 20:00 |
There are two variable delivery date description patterns:
"<N>M"
(N-th month)"Q<N>"
(N-th quarter)Description | Meeting start | Delivery date |
---|---|---|
"<N>M" |
Before N-th month | At 8:00 on the first workday of this year's N-th month |
"<N>M" |
After or in N-th month | At 8:00 on the first workday of next year's N-th month |
"Q<N>" |
Before or in N-th quarter | At 8:00 on the last workday of this year's N-th quarter |
"Q<N>" |
After N-th quarter | At 8:00 on the last workday of next year's N-th quarter |
A workday is a Monday, Tuesday, Wednesday, Thursday, or Friday.
A year has four quarters, each with three months:
Sign up to Exercism to learn and master Elixir with 57 concepts, 161 exercises, and real human mentoring, all for free.