Submeter | Todas submissőes | Melhores | Voltar |
F91 - f91 |
McCarthy é um teórico famoso de ciência da computação. No seu trabalho, ele definiu uma função recursiva,
chamada f91
, que recebe como entrada um inteiro N
e retorna um inteiro positivo definido como a
seguir:
- Se
N ≤ 100
, entãof91 (N) = f91 (f91 (N + 11))
; - Se
N ≥ 101
, entãof91 (N) = N - 10
.
Escreva um programa que computa a função f91 de McCarthy.
Entrada
O arquivo de entrada consiste de uma série de inteiros positivos, cada
inteiro é no máximo 1.000.000
. Há no
máximo 250.000
casos de teste. Cada linha possui somente um número. O fim da entrada é alcançada quando o
número 0
é encontrado. O número 0
não deve ser considerado como parte do conjunto de teste.
Saída
O programa deve imprimir cada resultado em uma linha, seguindo o formato fornecido no exemplo de saída.
Exemplo
Entrada: 500 91 0 Saída: f91(500) = 490 f91(91) = 91
Adicionado por: | Wanderley Guimarăes |
Data: | 2007-10-02 |
Tempo limite: | 3s |
Tamanho do fonte: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Linguagem permitida: | Todas exceto: ASM64 CLOJURE ERL FSHARP JS-RHINO PERL6 PY_NBC SCALA TCL |
Origem: | Segunda Seletiva para Maratona de Programacao UFRN - 2004 |
hide comments
|
|||||||||
2011-05-01 05:15:59 Rafael Perrella
Kalídio, a quantidade de linhas de um código năo faz a menor diferença. Repare: for (long long i = 0; i < 10000000000; i ++); Vai demorar vários segundos pra rodar, e só tem uma linha... enfim, o que importa é o que vocę faz em cada linha, e năo quantas linhas tem. Last edit: 2011-06-08 02:01:09 |
|||||||||
2011-04-25 22:10:10 thiagojobson [UERN]
@Sávio, Talvez o problema esteja na forma como vocę faz a leitura dos dados no C++, que costuma ser um pouco mais lenta que o scanf do C. |
|||||||||
2011-04-14 18:19:30 Sávio Dias [GEDAL-UFT]
por incrivel que pareça de C++ e C que eu testei só o C năo deu tempo limite excedido săo segredos de recursividade que nunca entenderemos :S |
|||||||||
2011-04-01 00:41:40 Thyago Quintas
Pegadinha master, mas foi sussa ! :) Dica: Usa o papel também !! |
|||||||||
2011-02-27 21:51:30 natan
Que saída é para a entrada: -10 5 1000005 Last edit: 2011-02-27 21:52:07 |
|||||||||
2010-12-03 03:15:32 Kalídio[UERN]
reduzi meu codigo(C++) a 11 linhas, a mais comprida tendo 37 caracteres e ainda da "tempo limite exedido"??? |
|||||||||
2010-10-17 13:38:03 Augusto Félix
f91(91) = 91 ?? Năo entendi essa .. |
|||||||||
2010-10-07 13:06:06 SylvioT.[UNIRON]
Pow fica dificil com 2 caso teste hein ;x |
|||||||||
2010-10-06 01:04:40 Dayse Yanne
f91(91) = 91? nao e 92 podem mandar mais caso de teste por favor?? Last edit: 2010-10-06 01:05:53 |
|||||||||
2010-06-30 17:47:51 Igor Moreira Félix [INF - UFG]
artur jordao, precisa colocar espaço sim, a escrita é absolutamente igual ao exemplo do exercício. Last edit: 2010-06-30 17:48:08 |