Nota de traducción. Este manual es una traducción del original en portugués. Las herramientas de línea de comandos (
moj,moj-contest,moj-comp) muestran sus mensajes en portugués, y los ejemplos de comandos son idénticos al original.
¿Prefieres la terminal? La CLI
moj-comptambién funciona en el entrenamiento: buscar un problema, descargar el enunciado, enviar y recibir el veredicto sin salir de la shell. Guía: /treino/cli.html.
Te damos la bienvenida al Entrenamiento libre del MOJ, el juez en línea. Este manual muestra, paso a paso, cómo crear tu cuenta, ingresar, encontrar problemas, enviar tu solución y seguir el resultado. Está escrito para quien está empezando, así que vamos con calma y sin prisa.
El Entrenamiento libre es el espacio donde practicas a tu ritmo:
eliges el problema, escribes el código, lo envías y ves el veredicto.
Sin plazo y sin marcador de competencia. Para competir de verdad,
consulta el MANUAL-CONTEST.md al final de este
documento.
Abre la dirección / del MOJ. No necesitas
iniciar sesión para ver la página de inicio.
Arriba está la barra de menú con estos elementos:
| Elemento | Para qué sirve |
|---|---|
| Inicio | Vuelve a esta página |
| Entrenamiento libre | El espacio de práctica libre (es el tema de este manual) |
| Competencias | Competencias y entrenamientos con plazo |
| Noticias | Avisos y novedades de la plataforma |
| Estado | Situación de los jueces y del sistema |
| Docs | Manuales y documentación |
Junto al menú está el selector de idioma PT · EN · ES: todo el sitio existe en los tres idiomas. A la derecha está el área de inicio de sesión: antes de ingresar, los campos de usuario y contraseña; después, tu avatar, que abre un menú con accesos directos (Mis estadísticas, Perfil, Salir…).
Al bajar por la página, encuentras:
Para empezar a practicar, haz clic en Entrenamiento
libre. Te lleva a la dirección /treino/ (sección
5).
El registro del Entrenamiento libre está en
/treino/cadastro/ y se confirma por
Telegram. Esto evita cuentas duplicadas. Por lo tanto, para
registrarte necesitas una cuenta de Telegram.
Sigue estos pasos:
.,
_ y -. Si lo dejas vacío, el sistema usa tu
@ de Telegram como usuario.Un punto importante sobre la contraseña:
Tu contraseña llega solo por mensaje privado en Telegram. Nunca aparece en la web. Guarda bien ese mensaje.
Terminado el registro, pasa a la pantalla de inicio de sesión (siguiente sección).
¿Eres menor de edad (sin Telegram)? La cuenta la crea un profesor/admin responsable, que te entrega el usuario y la contraseña. Estas cuentas tienen el perfil siempre privado hasta los 18 años. Detalles en
CONTAS-GERIDAS.md.
El inicio de sesión está en la parte superior de cualquier página del Entrenamiento libre. Verás:
Completa usuario y contraseña (la contraseña es la que el bot te envió por Telegram) y haz clic en Ingresar.
Cuando tienes la sesión iniciada, la esquina derecha de la barra muestra tu avatar. Haz clic en él para abrir un menú con accesos directos:
No existe un formulario de "olvidé mi contraseña" en la web. La recuperación se hace por Telegram.
Si vinculaste Telegram a tu cuenta (lo que ocurre en el registro), haz lo siguiente:
/trocarsenha.Después, vuelve a la pantalla de inicio de sesión e ingresa con la contraseña nueva.
Si tu cuenta no tiene Telegram (cuenta creada por un responsable; consulta la nota de la sección 2), el restablecimiento de la contraseña lo hace el responsable que creó la cuenta.
La búsqueda de problemas está en /treino/. Ver
la lista y leer los enunciados no requiere iniciar sesión. Tu
progreso personal y el envío de
soluciones sí lo requieren.
La página tiene dos modos: el hub (la puerta de entrada) y la búsqueda avanzada (la lista completa con filtros). Cualquier búsqueda o filtro te lleva del hub a la búsqueda avanzada automáticamente.
La lista completa, siempre visible, con el riel de filtros a la izquierda:
obi) toma todas sus
colecciones de una vez. El número a la derecha es tu
progreso (ej.: 20/140).Sobre la tabla están los chips de los filtros activos (la × los quita uno por uno), el conteo de resultados y el orden: Más resueltos, A–Z, Dificultad y Novedades (los publicados más recientemente primero).
| Columna | Qué muestra |
|---|---|
| ✓ | Si lo resolviste (✓) o lo intentaste (…). Aparece con la sesión iniciada |
| Problema | El título, que es el enlace para abrir el problema |
| Colecciones | Haz clic en una colección para sumarla al filtro |
| Dificultad | La franja según la tasa por usuario (resueltos ÷ intentados) |
| Dirt | Cuánto se falla antes de acertar: la parte de los envíos de quienes resolvieron que estaba equivocada. Alto = el problema castiga los errores. Verde ≤20%, amarillo ≤50%, rojo por encima. |
| Resueltos | Cuántos usuarios lo resolvieron / lo intentaron |
La lista viene en páginas de 50. Consejo: la URL guarda tus filtros. Copia el enlace para compartir una búsqueda. En el celular, el riel se convierte en el botón Filtros (n).
Para abrir un problema, haz clic en su título.
Al hacer clic en el título, llegas a la dirección
/treino/problema/?id=<id>, donde
<id> es el código del problema. La pantalla tiene dos
partes:
En la parte superior del enunciado encuentras:
Cada bloque de ejemplo del enunciado tiene un botón Copiar en el título. Un clic copia el bloque entero, con el salto de línea final.
Cuando el problema tiene el enunciado en más de un idioma, aparecen los chips PT · EN · ES encima del texto. Haz clic para cambiar. El título cambia junto. El MOJ recuerda tu elección para los próximos problemas. En la lista de problemas, el sello EN ES junto al título muestra qué problemas tienen traducción.
Necesitas iniciar sesión para enviar. En el panel Enviar solución:
Lo que ves después del clic. No hay ventana emergente. El botón muestra una rueda con Enviando… mientras el envío va al servidor y no acepta otro clic. Después se pone verde por un instante, con ✓ Enviado. Debajo aparece la confirmación ✓ Enviado a las 14:03:12 — C++, y el envío entra en el historial en el momento. Después del envío, el campo de archivo queda vacío.
El MOJ no envía el editor vacío ni la plantilla del lenguaje sin ningún cambio: te pide que escribas tu solución.
El mismo código otra vez. Si el código es igual al último que enviaste en ese problema, en el mismo lenguaje, el primer clic no envía. El botón se pone naranja y dice Mismo código que el envío de las 14:03: ¿enviar de nuevo?. Haz clic otra vez en menos de 5 segundos para enviarlo igual. Cambiar el lenguaje cuenta como código nuevo.
Como máximo 3 envíos en la cola. Tu cuenta puede tener hasta 3 envíos esperando veredicto al mismo tiempo. El 4.º se rechaza con el aviso "Ya tienes 3 envíos esperando el veredicto". Espera a que salga un resultado y envía de nuevo. El límite vale también en la participación virtual. Existe para que ninguna cuenta ocupe el juez sola.
El editor tiene algunas comodidades:
Justo debajo está el Historial de envíos, con estas columnas:
| Columna | Qué muestra |
|---|---|
| Fecha/Hora | Cuándo enviaste |
| Acciones | Botones rápidos (ver abajo) |
| Lenguaje | El lenguaje usado en ese envío |
| Estado | El veredicto de la evaluación |
Los botones de la columna Acciones son:
Mientras el resultado está pendiente, aparece un indicador de carga y la página se actualiza sola cuando sale el veredicto. No necesitas recargarla a mano.
Debajo del veredicto viene una línea de resumen, por ejemplo:
Aprobado 3/5 pruebas
Los detalles de cada lenguaje y de cómo funcionan la entrada y la
salida de los datos están en la página Ayuda del sitio
(/treino/ajuda/), que también tiene el código inicial de
cada lenguaje. El enlace "📖 Cómo enviar" aparece junto al selector de
lenguaje, en el momento del envío.
Tu perfil está en /treino/perfil/. Está dividido en
secciones, y cada sección tiene su propio botón para
guardar. Ajusta lo que quieras y guarda sección por
sección.
| Sección | Qué ajustas |
|---|---|
| Datos | Nombre, universidad y el editor/IDE favorito (aparece en el ranking de editores) |
| Contraseña | Contraseña actual, nueva contraseña y confirmación de la nueva |
| Privacidad | La opción Perfil público. Si la desmarcas, tus estadísticas quedan solo para ti |
| Foto de perfil | Subir una imagen, que se recorta a 100x100 |
| Nombre de usuario | Cambiar tu handle |
Un cuidado con el cambio de Nombre de usuario:
Cambiar el handle actualiza todo tu historial al nombre nuevo. Existe un límite de cambios por año (el valor por defecto es 2), y la propia pantalla muestra cuántos ya usaste.
Esa página es la edición del perfil. Lo que ven los
demás, tu perfil público, está en
/treino/stat/?user=<tu usuario> y es el tema de la
siguiente sección.
Cada usuario tiene un perfil público en
/treino/stat/?user=<login>. El tuyo se abre desde el
menú del avatar → 📊 Mis estadísticas; el de los demás,
haciendo clic en su nombre (en el Top 10 de la página de inicio, por
ejemplo).
De arriba abajo, el perfil muestra:
82/100). El catálogo
completo y las reglas están en PERFIL.md.Recuerda: si tu perfil es privado (sección 7), todo esto solo aparece para ti, y tu nombre también sale de las listas públicas de la página de inicio.
La página /treino/editores/ reúne las estadísticas de
los editores favoritos declarados por los usuarios: un
ranking y la distribución de quién usa
qué.
Consejo: ¿quieres aparecer en ese ranking? Declara tu editor en la sección Datos del Perfil (consulta la sección 7).
Algunas competencias finalizadas tienen el botón 🕹️ Virtual en la tarjeta (página de inicio y archivo de competencias). Ese botón abre la participación virtual: rehaces la competencia entera, con reloj, contra el marcador oficial. Los equipos oficiales resuelven los problemas en el mismo minuto en que los resolvieron en la competencia real.
Filtros del marcador. La barra es la misma del marcador de la competencia: Marcador (por ejemplo, solo los equipos oficiales, sin invitados), Bandera, Universidad, Sede y la búsqueda. Con un filtro activo, el número grande es la posición en el recorte y el pequeño es la posición general. Tu fila aparece siempre. Mis elegidos. Haz clic en el 📌 de una fila virtual para fijar a esa persona: aparece siempre en el marcador, con cualquier filtro. El botón 📌 Elegidos abre la lista: busca por nombre o usuario, marca y desmarca, o agrega el usuario de alguien que todavía no hizo el virtual de esta competencia. La lista es de tu cuenta y vale para todas las competencias. Ejemplo de uso: elige a tus amigos, selecciona una Sede y mira la posición de cada uno entre los equipos de esa sede.
El selector Virtuales elige entre todos los participantes virtuales, solo los elegidos, solo tú, o ninguno. El filtro de Sede no oculta a los virtuales: así comparas tu resultado con los equipos de esa sede.
Desistir sin registrar: el botón Desistir existe en los primeros 15 minutos, o mientras no tengas ningún problema aceptado. Desistir te devuelve el intento, como máximo 2 veces. Después de eso, el inicio es definitivo. Terminar el tiempo sin ningún aceptado cuenta como desistir.
Después: tu fila queda en el marcador virtual de la competencia, marcada como virtual. Cada cuenta hace la participación virtual de una competencia una vez. Los envíos quedan en tu historial del entrenamiento.
Sin iniciar sesión, la misma página muestra el Replay: arrastra el control de tiempo para ver el marcador en cualquier minuto de la competencia.
/treino/ajuda/).MANUAL-CONTEST.md.Buenos entrenamientos, y buen código.