templateTP.tex 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. \documentclass[a4paper]{article}
  2. \usepackage[spanish]{babel}
  3. \usepackage[latin1]{inputenc}
  4. \usepackage{framed}
  5. \input{Algo1Macros}
  6. \newcommand{\comen}[2]{%
  7. \begin{framed}
  8. \noindent \textsf{#1:} #2
  9. \end{framed}
  10. }
  11. \begin{document}
  12. \materia{Algoritmos y Estructura de Datos I}
  13. \cuatrimestre{2}
  14. \anio{2016}
  15. %\fecha{26 de agosto de 2016}
  16. \nombre{\LARGE TPE OJOTA (Organizaci\'on de Juegos Ol\'impicos Tp de Algoritmos 1) v1.0}
  17. \titulotp
  18. \section{Tipos}
  19. \input{tipos/tipos.tex}
  20. \section{Atleta}
  21. \input{tipos/atleta.tex}
  22. \begin{problema}{especialidad}{a: Atleta}{Deporte}
  23. \asegura{result \in deportes(a)}
  24. \asegura{capacidad(a,result)==maximoLista(listarCapacidades(a))}
  25. \aux{listarCapacidades}{a:Atleta}{[\ent]}{[capacidad(a,x) | x \leftarrow deportes(a) ]}
  26. \aux{maximoLista}{ls:[\ent]}{\ent}{[x|x\leftarrow ls, (\forall y \leftarrow ls) x \geq y][0]}
  27. \end{problema}
  28. \begin{problema}{entrenarNuevoDeporte}{a: Atleta, d: Deporte, c: \ent}{}
  29. \requiere{c \geq 0 \wedge c \leq 100}
  30. \requiere{\neg (a(d,deporte(a)))}
  31. \modifica{a}
  32. \asegura{mismos(deportes(a),deportes(pre(a)))}
  33. \asegura{ordenada(deportes(a))}
  34. \asegura{capacidad(a,d)==c}
  35. \end{problema}
  36. \section{Competencia}
  37. \input{tipos/competencia.tex}
  38. \begin{problema}{finalizarCompetencia}{c: Competencia, posiciones: [Atleta], control: [(Atleta, \bool)]}{}
  39. %definir mismos en Auxiliares
  40. \requiere{contenida(posiciones,participantes(c))}
  41. \requiere{sinRepetidos(posiciones)}
  42. \requiere{(\forall x \leftarrow control) prm(x) \in participantes(c)}
  43. \modifica{c}
  44. \asegura{finalizada(c)}
  45. \asegura{ranking(c)==posiciones}
  46. \asegura{participantes(c)==participantes(pre(c))}
  47. \asegura{LesTocoControlAntiDOpping(c)== [prm(x) | x \leftarrow control]}
  48. \asegura{(\forall x \leftarrow control) leDioPositivo(prm(x))==sgn(x)}
  49. \asegura{categoria(c)==categoria(pre(c))}
  50. \end{problema}
  51. \begin{problema}{linfordChristie}{c: Competencia, a: Atleta}{}
  52. \requiere{\neg finalizada(c)}
  53. \requiere{a \in participantes(c)}
  54. \modifica{c}
  55. \asegura{mismos(participantes(pre(c)), a:participantes(c))}
  56. \asegura{categoria(c)==categoria(pre(c))}
  57. \asegura{\neg finalizada(c)}
  58. \end{problema}
  59. \begin{problema}{gananLosMasCapaces}{c: Competencia}{\bool}
  60. \requiere{finalizada(c)}
  61. \asegura{result==(\forall x \leftarrow[0..|ranking(c)|-2])capacidad(ranking(c)[x],deporte) \geq capacidad(ranking(c)[x+1],deporte)}
  62. Nota deporte=fem(categoria(c)) ?? no entiendo la letra
  63. \end{problema}
  64. \begin{problema}{sancionarTramposos}{c: Competencia}{}
  65. \requiere{finalizada(c)}
  66. \modifica(c)
  67. \asegura{finalizada(c)}
  68. \asegura{categoria(c)==categoria(pre(c))}
  69. \asegura{participantes(c)==participantes(pre(c))}
  70. \asegura{incluida(ranking(c),participantes(c))}
  71. \asegura{incluida(LesTocoControlAntiDOpping(c),participantes(c))}
  72. \asegura{mismos(ranking(pre(c)),ranking(c)++listaDopping(c,LesTocoControlAntiDOpping(c)))}
  73. \asegura{ranking=ranking(pre(??))-listaDopping(c,LesTocoControlAntiDOpping(c))}
  74. \aux{listaDopping}{c:competencia, a:[atleta]}{[atleta]}{[x|x \leftarrow a, DioPositivo(c,x)]}
  75. \end{problema}
  76. \section{JJOO}
  77. \input{tipos/jjoo.tex}
  78. \begin{problema}{dePaseo}{j: JJOO}{[Atleta]}
  79. \end{problema}
  80. \begin{problema}{medallero}{j: JJOO}{[(Pais, [\ent])]}
  81. \end{problema}
  82. \begin{problema}{boicotPorDisciplina}{j: JJOO, cat: (Deporte, Sexo), p: Pais}{\ent}
  83. \end{problema}
  84. \begin{problema}{losMasFracasados}{j: JJOO, p: Pais}{[Atleta]}
  85. \end{problema}
  86. \begin{problema}{liuSong}{j: JJOO, a: Atleta, p: Pa\'is}{}
  87. \end{problema}
  88. \begin{problema}{stevenBradbury}{j: JJOO}{Atleta}
  89. \end{problema}
  90. \begin{problema}{uyOrdenadoAs\'iHayUnPatr\'on}{j: JJOO}{\bool}
  91. \end{problema}
  92. \begin{problema}{sequ\'iaOl\'impica}{j: JJOO}{[Pa\'is]}
  93. \end{problema}
  94. \begin{problema}{transcurrirDia}{j: JJOO}{}
  95. \end{problema}
  96. \section{Auxiliares}
  97. \input{auxiliaresTipos.tex}
  98. \end{document}