PROG0321 - Sleeping beauty

no tags 

Your biological clock — or circadian clock from the Latin circa for about and dies for day — is a biorhythm of which the cycle has a duration of 1 day. This clock is regulated by processes in the brain that react to the time you are already awake and the changes in light and darkness. At night, your body reacts to a lack of daylight by making melatonine, a hormon that makes you sleepy. During the day, the sunlight makes your brain stop making melatonine, which makes you feel awake and alert.

A human's internal clock can be disturbed by various factors: night work, traveling over multiple time zones or an irregular sleep pattern. This can make you feel groggy, disoriented or sleepy at inconvenient times. The production of melatonine can also be disturbed by a lack of sunlight during the day or augmented exposure to artificial light during the night, especially light of electronic devices such as TVs, computers, tablets and mobile phones.

You could assume that once you go to bed, you will soon fall into a deep sleep that lasts all night until you wake up again. The sleep cycle, however, is a lot more complicated than that. During the night, your sleep follows a predictable pattern, that moves to and fro between a deep sleep and more alert moments during which you are dreaming (REM sleep). The stages of REM sleep and non-REM sleep form the entire sleep cycle. Every sleep cycle typically lasts about 90 minutes and repeats itself ideally four to six times a night. How long you spend in every sleeping condition, changes as the night continues. The biggest part of deep sleep, for example, occurs during the first part of sleep. Later on in the sleep, the periods of REM sleep last longer, alternating with stage 2 sleeping periods. This explains why you wake up faster in the early hours, when you are sensitive to waking up in the middle of the night, rather than when you just fell asleep.

hypnogram
Hypnogram that shows the sleeping cycle between midnight and 06:30 AM, with deep sleep in the early stage of sleep. Right before the awakening, there is an increase in REM sleep (rapid eye movement).

Even if you enjoyed a long sleep, it can be difficult to get out of bed when the alarm clock goes off in the middle of a deep sleeping stage (stage 3). If you want to make waking up less painful — or if you can only sleep a short amount of time — try setting your alarm clock so that you sleep a multiple of 90 minutes, this being the length of the average sleeping cycle. For example, if you go to bed at 10:00 PM, try setting your alarm clock at 05:30 AM (after 7 hours of sleep) rather than 06:00 AM of 06:30 AM. You might feel more awake at 05:30 than if you had slept half an hour or an hour longer, because you wake up at the en of a sleeping cycle when the body and brain are close to awakeness. There even are mobile apps that follow your sleeping cycle precisely, and determine when your alarm clock should go off.

Input

The input consists of four natural numbers, each on a separate line. The first two numbers represent the hour and minute of the moment you fall asleep (or think you'll fall asleep), and the last numbers are the hour and minute of the moment you want to wake up at the earliest. Both times should be expressed according to a 24-hour-clock, i.e. hours between 0 and 23 and minutes between 0 and 59.

Output

As output, you have to write out a line with the ideal moment to wake up. This is the first moment in time from the time you gave up as the time you want to wake up at the earliest, that gives you a duration of sleep that is a multiple of 90 minutes. This time should be expressed on a 24-hour-clock, i.e. hours between 0 and 23 and minutes between 0 and 59. The hours and minutes of the time should be separated by a double point and both numbers should be expressed with two digits, using a leading zero if necessary.

Example

Input:

22
37
6
0

Output:

06:07

Je biologische klok — of circadiaanse klok van het Latijnse circa voor ongeveer en dies voor dag — is een biologisch ritme waarvan de cyclus ongeveer één dag duurt. Deze klok wordt gereguleerd door processen in de hersenen die reageren op de tijd dat je reeds wakker bent en de wisselingen tussen licht en donker. 's Nachts reageert je lichaam op het gebrek aan daglicht door het aanmaken van melatonine, een hormoon waarvan je slaperig wordt. Overdag zet het zonlicht je hersenen ertoe aan om de aanmaak van melatonine te blokkeren, waardoor je je wakker en alert voelt.

De interne klok van de mens kan door verschillende factoren verstoord worden: nachtwerk, reizen over verschillende tijdszones of onregelmatige slaappatronen. Dit kan ervoor zorgen dat je je groggy, gedesoriënteerd of slaperig voelt op momenten waarop dit ongelegen komt. De productie van melatonine kan ook verstoord raken bij gebrek aan zonlicht gedurende de dag of overmatige blootstelling aan kunstlicht tijdens de nacht, en dan vooral het licht van elektronische apparaten zoals tv's, computers, tablets en mobiele telefoons.

Je zou kunnen vermoeden dat als je eenmaal naar bed bent gegaan, je weldra in een diepe slaap valt die zowat de hele nacht aanhoudt, en in de ochtend overgaat in een lichte slaap totdat het moment van opstaan is aangebroken. De slaapcyclus is echter een stuk gecompliceerder dan dat. Tijdens de nacht volgt je slaap een voorspelbaar patroon, dat heen en weer beweegt tussen een diep slaap en meer alertere momenten waarin je aan het dromen bent (REM slaap). De fasen van de REM slaap en niet-REM slaap vormen samen een volledige slaapcyclus. Elke slaapcyclus duurt typisch zo'n 90 minuten, en herhaalt zich idealiter vier tot zes keer tijdens de nacht. Hoe lang je doorbrengt in elke slaaptoestand wijzigt naarmate de nacht vordert. Het grootste gedeelte van de diepe slaap komt bijvoorbeeld voor tijdens het eerste deel van de slaap. Verder in de slaap worden de periodes van de REM slaap langer, afgewisseld met fase2 slaapperiodes. Dit verklaart waarom je eerder wakker wordt in de vroege uurtjes, als je gevoelig bent aan wakker worden in het midden van de nacht, eerder dan dat het zich voordoet kort nadat je bent ingeslapen.

hypnogram
Hypnogram dat de slaapcyclus weergeeft tussen middernacht en 06:30 's morgens, met een diepe slaap in het vroege stadium van de slaap. Er is een verhoogde REM-slaap (rapid eye movement) vlak voor het ontwaken.

Zelfs wanneer je van een lange slaap hebt genoten, kan het toch moeilijk zijn om uit bed te komen wanneer de wekker afgaat temidden een diepe slaapfase (fase 3). Als je het opstaan minder pijnlijk wilt maken — of als je weet dat je maar korte tijd kunt slapen — probeer je wekker dan zo in te stellen dat je een veelvoud van 90 minuten slaapt, aangezien dit de lengte is van een gemiddelde slaapcyclus. Als je bijvoorbeeld om 22:00 naar bed gaat, zet dan je alarm om 05:30 (na zevenenhalf uur slaap) eerder dan om 06:00 of 06:30. Het zou wel eens kunnen dat je je om 05:30 veel uitgeruster voelt dan wanneer je nog een half uur of een uur was blijven doorslapen, omdat je dan opstaat op het einde van een slaapcyclus wanneer je lichaam en hersenen toch al dicht bij een waaktoestand waren. Er zijn zelfs ook al mobiele apps beschikbaar die heel nauwkeurig je slaapcycli opvolgen, en op basis daarvan bepalen wanneer de wekker best afgaat.

Invoer

De invoer bestaat uit vier natuurlijke getallen, elk op een afzonderlijke regel. De eerste twee getallen stellen het uur en de minuut voor van het tijdstip waarop je in slaap valt (of denkt te vallen), en de laatste twee getallen stellen het uur en de minuut voor van het tijdstip waarop je ten vroegste wilt opstaan. Beide tijdstippen worden uitgedrukt volgens een 24-uursklok, dus met uren tussen 0 en 23 en minuten tussen 0 en 59.

Uitvoer

Als uitvoer moet je een regel uitschrijven met het ideale tijdstip om op te staan. Dit is het eerstvolgende tijdstip vanaf het tijdstip waarop je ten vroegste wilt opstaan, dat je een slaapduur oplevert die een veelvoud is van 90 minuten. Dit tijdstip moet worden uitgedrukt op een 24-uursklok, dus met uren tussen 0 en 23 en minuten tussen 0 en 59. De uren en minuten van het tijdstip moeten van elkaar gescheiden worden met een dubbelpunt, en beide getallen moeten weergegeven worden met twee cijfers door indien nodig een voorloopnul aan het getal toe te voegen.

Voorbeeld

Invoer:

22
37
6
0

Uitvoer:

06:07


Added by:Peter Dawyndt
Date:2013-02-05
Time limit:10s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:PY_NBC
Resource:None