Submeter | Todas submissőes | Melhores | Voltar |
ESTAC - Estacionamento |
Um estacionamento utiliza um terreno em que os veículos têm que ser guardados em fila única, um atrás do outro. A tarifa tem o valor fixo de R$ 10,00
por veiculo estacionado, cobrada na entrada, independente de seu porte e tempo de permanência. Como o estacionamento é muito concorrido, nem todos os veículos que chegam ao estacionamento conseguem lugar para estacionar.
Quando um veículo chega ao estacionamento, o atendente primeiro determina se há vaga para esse veículo. Para isso, ele percorre a pé o estacionamento, do início ao fim, procurando um espaço que esteja vago e tenha comprimento maior ou igual ao comprimento do veículo. Para economizar seu tempo e energia, o atendente escolhe o primeiro espaço adequado que encontrar; isto é, o espaço mais próximo do iníıcio.
Uma vez encontrada a vaga para o veículo, o atendente volta para a entrada do estacionamento, pega o veículo e o estaciona no começo do espaço encontrado. Se o atendente não encontrar um espaço adequado, o veículo não entra no estacionamento e a tarifa não é cobrada. Depois de estacionado, o veículo não é movido até o momento em que sai do estacionamento.
O dono do estacionamento está preocupado em saber se os atendentes têm cobrado corretamente a tarifa dos veículos estacionados e pediu para você escrever um programa que, dada a lista de chegadas e saídadas de veículos no estacionamento, determina o faturamento total esperado.
Entrada
A entrada é composta por diversos casos de teste. A primeira linha de um caso de teste contém dois números inteiros C
e N
que indicam respectivamente o comprimento em metros do estacionamento e o número total de eventos ocorridos (chegadas e saídas) de veículos). Cada uma das N
linhas seguintes descreve uma chegada ou saída. Para uma chegada de veículo, a linha contém a letra ‘C’
, seguida de dois inteiros P
e Q
, todos separados por um espaço em branco. P
indica a placa do veículo e Q
o seu comprimento. Para uma saída de veículo, a linha contém a letra ‘S’
seguida de um inteiro P
, separados por um espaço em branco, onde P
indica a placa do veículo. As ações são dadas na ordem cronológica, ou seja, na ordem em que acontecem.
No início de cada caso de teste o estacionamento está vazio. No arquivo de entrada, um veículo sai do estacionamento somente se está realmente estacionado, e a placa de um veículo que chega ao estacionamento nunca é igual a placa de um veículo já estacionado.
Saída
Para cada caso de teste seu programa deve imprimir uma linha contendo um número inteiro representando o faturamento do estacionamento, em reais.
Restrições
1 ≤ C ≤ 1000
1 ≤ N ≤ 10000
1 ≤ Q ≤ 100
1000 ≤ P ≤ 9999
Exemplos
Entrada 10 7 C 1234 5 C 1111 4 C 2222 4 C 4321 3 S 1111 C 2002 6 C 4321 3 30 10 C 1000 10 C 1001 10 C 1002 10 S 1000 S 1002 C 1003 20 S 1001 C 1004 20 S 1004 C 1005 30 20 10 C 1234 20 C 5678 1 S 1234 C 1234 20 C 5678 1 S 1234 C 5678 1 C 1234 20 C 5555 1 S 5678 Saída 30 50 40
Adicionado por: | Wanderley Guimarăes |
Data: | 2012-05-26 |
Tempo limite: | 1s |
Tamanho do fonte: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Linguagem permitida: | Todas exceto: ASM64 CLOJURE ERL FSHARP PERL6 PY_NBC SCALA TCL |
Origem: | Primeira fase da Maratona de Programaçăo - 2011 |
hide comments
2014-09-09 00:32:40 Rodrigo Rodrigues de Novaes Júnior
Meu programa deu certo para os tręs casos de teste, mas ao compilar aqui está dando erro. Já verifiquei as condiçőes básicas do programa e as saídas formatadas. |
|
2013-08-15 21:54:16 Bruno Camargo [UTFPR]
Mauricio Barbosa, no segundo caso de teste a saída é realmente 50. Teste de mesa: ------/------/----- -> Estacionamento 1000/1001/1002 -> Dinheiro = 30 -----/1001/----- 1003 năo entra -> Dinheiro = 30 -----/-----/---- -> saída do 1001 1004/10004/-----> Dinheiro = 40 -----/-----/----- -> saída do 1004 1005/1005/1005 -> Dinheiro = 50. |
|
2013-07-24 15:41:17 Mauricio Barbosa
No segundo caso de teste o resultado deveria ser 40, pois, tento em vista que um carro só é estacionado se houver espaço suficiente para seu comprimento, a quantidade de carros estacionados nesse caso de teste deveria ser 4. Logo, 4 vezes a tarifa (R$10,00) é igual a 40. Estou certo? |
|
2013-06-03 17:36:24 Tiago
Alguęm tem uma dica ou fluxograma desse exercicio ai, ou a soluçăo para eu estudar para futuras maratonas. |
|
2012-07-18 13:29:57 Everton Borges [UNOCHAPECO]
Last edit: 2012-07-18 18:38:45 |
|
2012-06-10 22:54:54 thiagojobson [UERN]
Vlw STL... |