|
@@ -1,14 +1,14 @@
|
|
|
12.
|
|
12.
|
|
|
problema stevenBradbury (j: JJOO) = result : Atleta {
|
|
problema stevenBradbury (j: JJOO) = result : Atleta {
|
|
|
//Requiere que al menos una competencia ya haya finalizado (y, por lo tanto, se haya entregado un oro)
|
|
//Requiere que al menos una competencia ya haya finalizado (y, por lo tanto, se haya entregado un oro)
|
|
|
- requiere algunOro: long([comp | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)>0|])>0;
|
|
|
|
|
|
|
+ requiere algunOro: long([comp | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0])>0;
|
|
|
|
|
|
|
|
//Asegura que result haya ganado un oro
|
|
//Asegura que result haya ganado un oro
|
|
|
- asegura ganoOro: existe(f <- [ranking(comp)[0] | comp <- todasLasCompetencias(j), finalizada(comp)]) ciaNumber(result)==ciaNumber(f);
|
|
|
|
|
|
|
+ asegura ganoOro: existe(f <- [ranking(comp)[0] | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0]) ciaNumber(result)==ciaNumber(f);
|
|
|
|
|
|
|
|
//Asegura que entre todos los ganadores de oro, el result es el que tiene la menor habilidad en alguna de las medallas que ganó.
|
|
//Asegura que entre todos los ganadores de oro, el result es el que tiene la menor habilidad en alguna de las medallas que ganó.
|
|
|
- asegura esElPeor: existe(dep <- deportesEnLosQueGano(j, result)) paraTodo(f <- [ranking(comp)[0] | comp <- todasLasCompetencias(j), finalizada(comp)]) capacidad(result, dep) <= capacidad(f, prm(categoria(comp));
|
|
|
|
|
|
|
+ asegura esElPeor: existe(dep <- deportesEnLosQueGano(j, result)) paraTodo(f <- [ranking(comp)[0] | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0]) capacidad(result, dep) <= capacidad(f, prm(categoria(comp));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
aux deportesEnLosQueGanoOro(j: JJOO, a: Atleta) : [Deportes] =
|
|
aux deportesEnLosQueGanoOro(j: JJOO, a: Atleta) : [Deportes] =
|
|
|
- [prm(categoria(comp)) | comp <- todasLasCompetencias(j), finalizada(comp), ciaNumber(ranking(comp)[0])==ciaNumber(a)];
|
|
|
|
|
|
|
+ [prm(categoria(comp)) | comp <- todasLasCompetencias(j), finalizada(comp)&&|ranking(comp)|>0&&ciaNumber(ranking(comp)[0])==ciaNumber(a)];
|