PROG0441 - Hey Presto !

no tags 

A bit of conjuring from Augustus de Morgan:

  1. Think of a one-digit number and remember it. (boundaries included, e.g. $4$).
  2. Write down a number of any length: (e.g. $8392017483$).
  3. Determine the number that you obtain by switching every pair of consecutive digits of the number from step 2. If the number from step 2 has an odd number of digits, then the last digit of the number from step 2 is also the last digit of the number in step 3. For example, the current number from step 2 provides the number $3829104738$.
  4. Determine the number that you obtain when subtracting the smallest numbers from step 2 and step 3 from the largest. The example number from step 2 then produces as a result the number $8392017483 - 3829104738 = 4562912745$.
  5. Count the number of characters in the name of your father or mother, the name of your birth country, and the name of your favorite actor or artist and add them together. For example, the names Arnold, Canada and Eddy Vedder have a total of 23 characters (the space in the name of the artist was also counted as a character).
  6.  Multiply the number you obtained in step 5 with four and its reverse by 5. Add these together, plus the number from step 1. Based on the examples we have given above, we obtain the number $23 \times 4 + 32 \times 5 + 4 = 256$.
  7.  Form the number by putting the figures of the numbers from step 4 and step 6 in a row. On the basis of the examples that we have given above, we obtain as a result the number $4562912745256$.

With just the visible figure from the last step, it is perfectly possible to trace the number from step 1. This is possible by adding up the digits of the number. Keep repeating this procedure until the result is a number consisting of one digit. The number that results from the above examples provides the following sums: $$ \begin{eqnarray*} 4 + 5 + 6 + 2 + 9 + 1 + 2 + 7 + 4 + 5 + 2 + 5 + 6 &=& 58 \\ 5 + 8 &=& 13 \\ 1 + 3 &=& 4 \end{eqnarray*} $$ Indeed, that results in the number from step 1.

It works because all multiples of 9 eventually produce 9 when their digits are added as above. The procedure asks you to create two multiples of 9 (in steps 4 and 6) and to combine their digits and add your own. Adding the digits will thus yield 9 plus the number chosen (here, 13), and of course adding those digits will yield the number itself. The business with the father’s first name, etc., is just smoke — any numbers can be used in those positions. The calculation of step 6 will be always result in a multiple of 9.

Input

The input consists of 5 lines with the following information:

  1. a number between 1 and 9, boundaries included (step 1)
  2. an arbitrary natural number (step 2)   
  3. the name of a father or mother (step 5)
  4. the name of a country of birth (Step 5)
  5. the name of an actor or artist (step 5)

Output

The first line of the output consists of the number you obtain in Step 7 by applying the trick to the values ​​given in the input. A number is written on a new line each time that you add up the digits of the previous number. This procedure ends when the last number that was issued contains only one digit.

Example

Input:

4
8392017483
Arnold
Canada
Eddy Vedder

Output:

4562912745256
58
13
4

Een tovertrucje dat we ontleend hebben aan Augustus de Morgan:

  1. Denk aan een getal tussen 1 en 9 (grenzen inbegrepen, bijvoorbeeld $4$).
  2. Schrijf een natuurlijk getal van willekeurige lengte op een blaadje papier (bijvoorbeeld $8392017483$).
  3. Bepaal het getal dat je bekomt door elke twee opeenvolgende cijfers van het getal uit stap 2 om te wisselen. Als het getal uit stap 2 een oneven aantal cijfers heeft, dan is het laatste cijfer van het getal uit stap 2 ook het laatste cijfer van het getal voor stap 3. Het voorbeeldgetal uit stap 2 levert bijvoorbeeld het getal $3829104738$ op.
  4. Bepaal het getal dat je bekomt door van de getallen uit stap 2 en stap 3 het kleinste af te trekken van het grootste. Het voorbeeldgetal uit stap 2 levert dan als resultaat het getal $8392017483 - 3829104738 = 4562912745$ op.
  5. Tel het aantal karakters in de naam van je vader of moeder, de naam van je geboorteland, en de naam van je favoriete acteur of artiest en tel deze bij elkaar op. De namen Arnold, Canada en Eddy Vedder hebben bijvoorbeeld in totaal 23 karakters (hierbij werd de spatie in de naam van de artiest ook meegeteld als karakter).
  6. Vermenigvuldig het getal dat je bekomt uit stap 5 met vier en zijn omgekeerde met vijf. Tel deze twee getallen bij elkaar op, samen met het getal uit stap 1. Op basis van de voorbeelden die we hierboven gegeven hebben, bekomen we hierdoor het getal $23 \times 4 + 32 \times 5 + 4 = 256$.
  7. Vorm het getal door de cijfers van de getallen uit stap 4 en stap 6 achter elkaar te zetten. Op basis van de voorbeelden die we hierboven gegeven hebben, bekomen we hierdoor het getal $4562912745256$.

Als je enkel het getal dat je bekomt uit de laatste stap zichtbaar maakt, dan is het perfect mogelijk om het getal uit stap 1 te achterhalen. Dat kan door de cijfers van het getal bij elkaar op te tellen. Blijf deze procedure herhalen zolang het resultaat een getal is dat bestaat uit meerdere cijfers. Het getal dat resulteert uit bovenstaande voorbeelden levert dan bijvoorbeeld de volgende sommen op: $$ \begin{eqnarray*} 4 + 5 + 6 + 2 + 9 + 1 + 2 + 7 + 4 + 5 + 2 + 5 + 6 &=& 58 \\ 5 + 8 &=& 13 \\ 1 + 3 &=& 4 \end{eqnarray*} $$ Dat levert inderdaad het getal uit stap 1 op.

Het trucje werkt omdat alle veelvouden van 9 uiteindelijk het getal 9 opleveren als hun cijfers worden opgeteld zoals we hierboven hebben beschreven. De procedure vraagt je om twee veelvouden van 9 te maken (in stappen 4 en 6) en dan hun cijfers te combineren en daar het cijfer uit stap 1 bij te tellen. Door de cijfers op te tellen bekom je dus 9 plus het gekozen getal in stap 1 (hier dus 13), en natuurlijk zal de som van deze twee cijfers opnieuw het getal uit stap 1 opleveren. Het verwerken van de namen in stap 5 dient enkel om verwarring te veroorzaken — op deze positie kan je immers gelijk welke getallen opgeven. De berekening uit stap 6 zal immers altijd een veelvoud van 9 opleveren.

Invoer

De invoer bestaat uit vijf regels die de volgende informatie bevatten:

  1. een getal tussen 1 en 9, grenzen inbegrepen (stap 1)
  2. een willekeurig natuurlijk getal (stap 2)
  3. de naam van een vader of moeder (stap 5)
  4. de naam van een geboorteland (stap 5)
  5. de naam van een acteur of artiest (stap 5)

Uitvoer

De eerste regel van de uitvoer bestaat uit het getal dat je in stap 7 bekomt door het trucje toe te passen op de waarden die gegeven zijn in de invoer. Daarna wordt op een nieuwe regel telkens het getal uitgeschreven dat je bekomt door de som van de cijfers van het vorige getal te bepalen. Deze procedure eindigt als het laatste getal dat werd uitgeschreven slechts één cijfer bevat.

Voorbeeld

Invoer:

4
8392017483
Arnold
Canada
Eddy Vedder

Uitvoer:

4562912745256
58
13
4


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