No mês passado, peguei emprestados muitos livros da biblioteca. Todos eram bons livros, cheios de emoções e reviravoltas na trama. Infelizmente, em alguns momentos fiquei muito zangado / triste / decepcionado, por isso rasguei algumas páginas.
Agora a biblioteca quer saber quantas páginas eu rasguei para cada livro.
Seu objetivo é escrever um programa, que use uma lista de números ordenada e delimitada por vírgulas como entrada e imprima a contagem mínima e máxima possível de páginas que eu poderia ter arrancado. Cada linha representa um livro, cada número representa uma página ausente do livro.
Exemplo de entrada:
7,8,100,101,222,223
2,3,88,89,90,103,177
2,3,6,7,10,11
1
1,2
Exemplo de saída:
4/5
5/6
3/6
1/1
1/2
4/5
significa que eu posso ter rasgado 4 ou 5 páginas, dependendo de qual lado a numeração das páginas do livro começa. Alguém poderia ter arrancado as páginas 6/7, 8/9, 100/101 e 222/223 (4 páginas). Como alternativa, alguém poderia ter arrancado as páginas 7/8, página 99/100, página 101/102, página 221/222 e página 223/224 (5 páginas).
Lembre-se de que uma página de livro sempre tem uma frente e um verso. Além disso, a numeração das páginas difere de livro para livro. Alguns livros têm números pares de páginas na página esquerda; alguns na página certa. Todos os livros são lidos da esquerda para a direita.
O código mais curto em bytes vence. Formato estrito de E / S não é necessário. Seus programas devem poder receber um ou mais livros como entrada. Diverta-se.
min/max
ou totalmente max/min
. (Embora, pessoalmente, eu prefiro que não seja parte da especificação!)
programs must be able to take one or more books as input
governar? A maioria (se não todos) apenas quebra o código para verificar um único livro em um loop ou algo assim. IMHO, basta adicionar uma sobrecarga à resposta com pouco ou nenhum ganho para o desafio. Como essas perguntas já têm muitas respostas, é melhor manter isso como está, mas lembre-se disso para os desafios futuros.
1,3,5,7,9,11,13,15,17,18
- para o benefício de idiomas cujo sort
método embutido classifica lexicograficamente por padrão (assumindo que o requisito de saída consistentemente classificada seja adicionado à especificação).
4/5
e5/4
) #