next up previous
Next: Entrada Up: No Title Previous: Exemplo

Problema 3: Robô

Arquivo: robo.c ou robo.pas
Entrada: robo.in
Saída: robo.out

A idéia deste problema é seguir os passos de vários robôs que se movem em um mundo formado por uma grade retangular. Uma posição do robô consiste de uma coordenada da grade (um par de inteiros: coordenada x seguida por coordenada y ) e uma direção (N, S, E, W para norte, sul, leste e oeste). Uma instrução é uma string das letras ``L'', ``R'' e ``F'' que representam respectivamente as instruções:

A direção norte corresponde à direção que vai do ponto (x,y) para o ponto (x,y+1) da grade. A direção leste corresponde à direção que vai do ponto (x,y) para o ponto (x+1,y) da grade.

Como a grade é retangular e limitada, um robô que se move para fora da fronteira é perdido para sempre. Entretanto, robôs perdidos deixam um perfume que proíbe outros robôs de caírem fora do mundo pelo mesmo ponto da grade. O perfume é deixado na última posição da grade que o robô ocupou antes de desaparecer. Uma instrução de mover para fora do mundo de um ponto da grade de onde algum robô anteriormente foi perdido é simplesmente ignorada pelo robô atual, independente da orientação que tinha o robô que se perdeu anteriormente.

Dadas as dimensões de uma grade retangular, uma seqüência de posições de robôs e instruções, você deve escrever um programa que determina a posição final de cada robô.


 
next up previous
Next: Entrada Up: No Title Previous: Exemplo

Carlos Eduardo Ferreira
8/17/1998