Sellos II X68780


Statement
 

pdf   zip   main.cc

html

Queremos enviar una postal por correo. El coste del envío es de n céntimos (n≥ 20) y podemos usar sellos de 7 y 4 céntimos de valor para cubrir el precio. Como el espacio para poner los sellos es limitado, queremos saber el número mínimo de sellos necesarios para satisfacer el envío sin perder un céntimo.

Usando la definición

struct Stamps { int stamp7; int stamp4; };

implementad una función recursiva

Stamps min_stamps(int n)

que retorne el número mínimo de sellos de valores 7 y 4 necesarios para satisfacer un precio de n céntimos (n ≥ 20). Por ejemplo, para n = 58, los valores de los atributos o campos del resultado de min_stamps deben ser 6 y 4.

Observación Para completar el caso recursivo, observad que las llamadas recursivas siempre devuelven una tupla Stamps con el valor del atributo stamp4 a lo sumo 6.

Observación Este problema es un ejemplo de uso de tuplas para poder definir funciones cuyo resultado no se puede representar de forma directa como un único valor.

Observación Sólo tenéis que enviar el procedimiento requerido; el programa principal será ignorado. Seguid estrictamente la definición de los tipos del enunciado.

Information
Author
Jorge Castro
Language
Spanish
Translator
Original language
Catalan
Other languages
Catalan English
Official solutions
Unknown.
User solutions
C++