Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Taquitos Cesar #22

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,4 @@ libinteractive.jar
Makefile

.vscode
results
results*
2 changes: 2 additions & 0 deletions Estructuras de Datos/Taquitos/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
**/*.out
!tests/invalid-cases/*.out
10 changes: 10 additions & 0 deletions Estructuras de Datos/Taquitos/examples/sample.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
9
1 4
1 3
1 10
3
1 5
2
2
1 9
4
Empty file.
30 changes: 4 additions & 26 deletions Estructuras de Datos/Taquitos/statements/es.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -15,34 +15,12 @@ Por cada una de las entradas del tipo $3$ y $4$, deberás imprimir un entero por

# Ejemplo

||input
9
1 4
1 3
1 10
3
1 5
2
2
1 9
4
||output
3
7
||examplefile
sample
||description
Al principio se forman 3 personas pidiendo $4$, $3$ y $10$ tacos respectivamente. Después se pregunta por el número de personas formadas, así que la respuesta es $3$. Luego se forma un cliente más pidiendo $5$ tacos. Posteriormente son atendidos los primeros 2 clientes, por lo que se venden $4+3=7$ tacos. Luego se forma un cliente más a la fila pidiendo $9$ tacos. Finalmente, se pregunta por el número de tacos vendidos, así que la respuesta es $7$.
||input
6
4
1 3
2
1 7
4
3
||output
0
3
1
||examplefile
sample1
||end

# Límites
Expand Down
11 changes: 11 additions & 0 deletions Estructuras de Datos/Taquitos/testplan
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
0 0
1 10
2 10
3 10
4 10
5 10
6 10
7 10
8 10
9 10
10 10
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Error en el límite de N
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1000000
Empty file.
42 changes: 42 additions & 0 deletions Estructuras de Datos/Taquitos/tests/test-validator.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
import logging
import unittest
import sys

from omegaup.validator import validatortest

class MyTest(unittest.TestCase):
def test(self):
original_input = open("data.in", "r")
first_line = original_input.readline().split()
self.assertEqual(len(first_line), 1, "Mas de un número en la primera línea")

N = int(first_line[0])

caseName = sys.argv[1]

# Check the limit on N
self.assertTrue(1 <= N <= 10000, "Error en el límite de N")
commands = 0
cmd_line = original_input.readline()
while cmd_line != "":
params = cmd_line.split()
cmd_type = params[0]
bb = 0 < int(cmd_type) < 5
self.assertTrue(bb, "Tipo de comando inválido")

if cmd_type == 1:
self.assertEqual(len(params), 2, "Tipo de comando 1 sin parámetro extra")
cantidad = params[1]
bb = 1 <= int(cantidad) <= 1000
self.assertTrue(bb, "Error en la cantidad de tacos")

cmd_line = original_input.readline()
commands += 1

self.assertEqual(commands, N)


if __name__ == '__main__':
validatortest.main()
9 changes: 5 additions & 4 deletions Estructuras de Datos/Taquitos/tests/tests.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
{
"solutions": [
{
"filename": "solutions/solution.cpp",
"filename": "../solutions/solution.cpp",
"verdict": "AC"
},
{
"filename": "solutions/solution2.cpp",
"filename": "../solutions/solution2.cpp",
"verdict": "AC"
}
],
"inputs": {
"filename": "dummy-validator.py"
}
"filename": "test-validator.py"
},
"max_score": 100
}
3 changes: 3 additions & 0 deletions problems.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
"problems": [
{
"path": "Programacion Basica/Palindromos"
},
{
"path": "Estructuras de Datos/Taquitos"
}
]
}