Rescat al túnel!


Submit solution

Points: 10
Time limit: 5.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C#, Go, Java

Ràpid! És una emergència!!! Ens han avisat que un conductor ha tingut un accident dins un túnel i hem de còrrer a rescatar-lo, tenint en compte que pel cantó dret del túnel entrarà una ambulància i pel cantó esquerre entrarà un camió de bombers. L'ambulància no pot avançar si hi han tres o més cotxes aturats seguits (no té espai per a maniobrar) mentre que al cotxe de bombers li passa el mateix però amb dos cotxes.

Ens han demanat fer una aplicació que digui el següent:

  • La quantitat de cotxes aturats que ha esquivat l'ambulància (entrant pel cantó esquerre) fins a poder arribar al cotxe accidentat (es possible que no pugui arribar).
  • La quantitat de cotxes aturats que ha esquivat el camió de bombers (entrant pel cantó dret) fins a poder arribar al cotxe accidentat (es possible que no pugui arribar).
  • Qui (ambulància o camió de bombers) arribarà abans al lloc de l'accident.

Input Format

Primera línia:

  • Un nombre enter \(L\) que representa la longitud del túnel.

Segona línia:

  • Un seguit de \(L\) caràcters separats per un espai, on:
    • El caràcter @ representa el cotxe accidentat.
    • El caràcter # representa un cotxe aturat.
    • El caràcter · representa un espai on no hi ha cap cotxe.

Constraints

  • \(L > 0\)

Output Format

Cal mostrar tres línies de text com les del següent exemple (revisa tots els outputs de l'exercici per a comprovar-ne les combinacions):

L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 4 cotxes aturats fins a arribar al lloc de l'accident. 
El cotxe de bombers ha entrat pel cantó dret del túnel i no ha pogut arribar fins el lloc de l'accident. 
L'ambulància ha arribat abans al lloc de l'accident.

Test Case 1

Input
8
· @ · · · · · ·
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 0 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i ha esquivat 0 cotxes aturats fins a arribar al lloc de l'accident. 
L'ambulància ha arribat abans al lloc de l'accident.

Test Case 2

Input
8
· · · · · · @ ·
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 0 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i ha esquivat 0 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha arribat abans al lloc de l'accident.

Test Case 3

Input
10
· # · @ · · · · # #
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 1 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i no ha pogut arribar fins el lloc de l'accident. 
L'ambulància ha arribat abans al lloc de l'accident.

Test Case 4

Input
10
# # # @ · · · · # #
Output
L'ambulància ha entrat pel cantó esquerre del túnel i no ha pogut arribar fins el lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i no ha pogut arribar fins el lloc de l'accident. 
Ni l'ambulància ni el camió de bombers han pogut arribat al lloc de l'accident.

Test Case 5

Input
10
# # # · · · @ · # #
Output
L'ambulància ha entrat pel cantó esquerre del túnel i no ha pogut arribar fins el lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i no ha pogut arribar fins el lloc de l'accident. 
Ni l'ambulància ni el camió de bombers han pogut arribat al lloc de l'accident.

Test Case 6

Input
10
@ # # · · · · · · #
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 0 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i no ha pogut arribar fins el lloc de l'accident. 
L'ambulància ha arribat abans al lloc de l'accident.

Test Case 7

Input
10
# # # · · · # · # @
Output
L'ambulància ha entrat pel cantó esquerre del túnel i no ha pogut arribar fins el lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i ha esquivat 0 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha arribat abans al lloc de l'accident.

Test Case 8

Input
11
# # · # · @ · # · # ·
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 3 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i ha esquivat 2 cotxes aturats fins a arribar al lloc de l'accident. 
L'ambulància i el camió de bombers han arribat alhora al lloc de l'accident.

Test Case 9

Input
11
· # # · @ # · # · · #
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 2 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i ha esquivat 3 cotxes aturats fins a arribar al lloc de l'accident. 
L'ambulància ha arribat abans al lloc de l'accident.

Test Case 10

Input
11
# # · # # · @ # · · #
Output
L'ambulància ha entrat pel cantó esquerre del túnel i ha esquivat 4 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha entrat pel cantó dret del túnel i ha esquivat 2 cotxes aturats fins a arribar al lloc de l'accident. 
El camió de bombers ha arribat abans al lloc de l'accident.

Authorship: Fernando Porrino Serrano

CC BY-NC-SA 4.0