Spaces:
Sleeping
Sleeping
| { | |
| "zh": { | |
| "tier1": [ | |
| { | |
| "id": "zh-t1-fizzbuzz", | |
| "title": "FizzBuzz", | |
| "tier": 1, | |
| "prompt": "写一个程序,打印从 1 到 30 的数字。\n\n规则:\n- 如果数字能被 3 整除,打印 \"嘶嘶\" 而不是数字\n- 如果数字能被 5 整除,打印 \"嗡嗡\" 而不是数字\n- 如果数字既能被 3 又能被 5 整除,打印 \"嘶嘶嗡嗡\"\n\n预期输出示例:1, 2, 嘶嘶, 4, 嗡嗡, 嘶嘶, 7, ...", | |
| "expected_output": "1\n2\n嘶嘶\n4\n嗡嗡\n嘶嘶\n7\n8\n嘶嘶\n嗡嗡\n11\n嘶嘶\n13\n14\n嘶嘶嗡嗡", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "zh-t1-factorial", | |
| "title": "阶乘", | |
| "tier": 1, | |
| "prompt": "写一个函数,计算一个正整数的阶乘。\n\n例如:\n- 阶乘(5) → 120\n- 阶乘(0) → 1\n- 阶乘(7) → 5040\n\n提示:阶乘(n) = n × (n-1) × ... × 1", | |
| "expected_output": "120\n1\n5040", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "zh-t1-palindrome", | |
| "title": "回文检测", | |
| "tier": 1, | |
| "prompt": "写一个函数,检测一个字符串是否是回文(正读反读都一样)。\n\n例如:\n- \"racecar\" → 是回文\n- \"hello\" → 不是回文\n- \"上海自来水来自海上\" → 是回文\n\n忽略大小写和空格。", | |
| "expected_output": "是\n否\n是", | |
| "time_estimate_min": 15 | |
| } | |
| ], | |
| "tier2": [ | |
| { | |
| "id": "zh-t2-calculator", | |
| "title": "计算器", | |
| "tier": 2, | |
| "prompt": "写一个简单的命令行计算器,支持以下功能:\n\n- 加法、减法、乘法、除法\n- 处理除以零的错误\n- 循环接受用户输入,直到用户输入 '退出'\n\n输入格式:\"数字 运算符 数字\"(例如:\"10 + 5\")", | |
| "expected_output": "计算器已启动(输入'退出'结束)\n>>> 10 + 5 = 15", | |
| "time_estimate_min": 25 | |
| }, | |
| { | |
| "id": "zh-t2-word-count", | |
| "title": "词频统计", | |
| "tier": 2, | |
| "prompt": "写一个程序,统计一段文字中每个词出现的频率,并按频率从高到低排序输出前 10 个词。\n\n输入:一段中文或英文文字(可以硬编码在程序中)\n输出:词语及其出现次数,按频率排序", | |
| "expected_output": "词频统计结果:\n\"的\": 15次\n\"是\": 12次\n...", | |
| "time_estimate_min": 30 | |
| } | |
| ], | |
| "tier3": [ | |
| { | |
| "id": "zh-t3-data-analysis", | |
| "title": "数据分析脚本", | |
| "tier": 3, | |
| "prompt": "写一个数据分析脚本,分析一组学生成绩数据。\n\n功能要求:\n1. 定义一组学生数据(姓名 + 成绩列表,至少 10 名学生)\n2. 计算班级平均分、最高分、最低分\n3. 按成绩分组(优秀 90+、良好 75-89、及格 60-74、不及格 <60)\n4. 找出成绩高于平均分的学生\n5. 输出完整报告", | |
| "expected_output": "班级成绩分析报告\n=================\n平均分:78.5\n最高分:98(李明)\n最低分:45(王芳)\n...", | |
| "time_estimate_min": 45 | |
| } | |
| ] | |
| }, | |
| "es": { | |
| "tier1": [ | |
| { | |
| "id": "es-t1-juego-del-7", | |
| "title": "El Juego del 7", | |
| "tier": 1, | |
| "prompt": "Este es el clásico juego de conteo español. Cuenta desde 1 hasta 21.\n\nReglas:\n- Si el número contiene el dígito 7 o es múltiplo de 7 → imprime \"¡Boom!\"\n- Si el número es múltiplo de 3 → imprime \"¡Zas!\"\n- Si se cumplen ambas condiciones → imprime \"¡Boom-Zas!\"\n- De lo contrario → imprime el número\n\nEjemplo de salida (primeros valores): 1, 2, ¡Zas!, 4, 5, ¡Zas!, ¡Boom!, 8, ¡Zas!, 10 ...", | |
| "expected_output": "1\n2\n¡Zas!\n4\n5\n¡Zas!\n¡Boom!\n8\n¡Zas!\n10\n11\n¡Zas!\n13\n¡Boom!\n¡Zas!\n16\n¡Boom!\n¡Zas!\n19\n20\n¡Boom-Zas!", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "es-t1-factorial", | |
| "title": "Factorial", | |
| "tier": 1, | |
| "prompt": "Escribe una función que acepte un número entero no negativo n y devuelva el factorial de n.\n\nEjemplos:\n- factorial(0) → 1\n- factorial(4) → 24\n- factorial(6) → 720\n\nPista: factorial(n) = n × (n-1) × ... × 1", | |
| "expected_output": "1\n24\n720", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "es-t1-palindromo", | |
| "title": "Palíndromo", | |
| "tier": 1, | |
| "prompt": "Escribe una función que determine si una palabra en español es un palíndromo (se lee igual de izquierda a derecha que de derecha a izquierda). Devuelve verdadero o falso.\n\nEjemplos:\n- \"arenera\" → verdadero\n- \"somos\" → verdadero\n- \"ananá\" → verdadero\n- \"hola\" → falso\n- \"casa\" → falso\n- \"perro\" → falso", | |
| "expected_output": "True\nTrue\nTrue\nFalse\nFalse\nFalse", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "es-t1-ordenamiento", | |
| "title": "Ordenamiento de Lista", | |
| "tier": 1, | |
| "prompt": "Sin usar funciones de ordenamiento incorporadas, implementa un algoritmo de ordenamiento para ordenar la lista [3, 1, 4, 2, 5] de menor a mayor.\n\nSalida esperada:\n[1, 2, 3, 4, 5]", | |
| "expected_output": "[1, 2, 3, 4, 5]", | |
| "time_estimate_min": 15 | |
| } | |
| ], | |
| "tier2": [ | |
| { | |
| "id": "es-t2-analizador", | |
| "title": "Analizador de Archivos", | |
| "tier": 2, | |
| "prompt": "Escribe un script que lea un archivo CSV jugadores.csv (con columnas nombre, equipo, goles), imprima cada fila y cuente el total de goles.\n\nCrea el archivo jugadores.csv con este contenido:\nnombre,equipo,goles\nLionel Messi,Inter Miami,32\nKarim Benzema,Al-Ittihad,28\nVinicius Jr,Real Madrid,23\nRobert Lewandowski,Barcelona,19\n\nSalida esperada:\nJugador: Lionel Messi | Equipo: Inter Miami | Goles: 32\nJugador: Karim Benzema | Equipo: Al-Ittihad | Goles: 28\nJugador: Vinicius Jr | Equipo: Real Madrid | Goles: 23\nJugador: Robert Lewandowski | Equipo: Barcelona | Goles: 19\nTotal de goles: 102", | |
| "expected_output": "Jugador: Lionel Messi | Equipo: Inter Miami | Goles: 32\nJugador: Karim Benzema | Equipo: Al-Ittihad | Goles: 28\nJugador: Vinicius Jr | Equipo: Real Madrid | Goles: 23\nJugador: Robert Lewandowski | Equipo: Barcelona | Goles: 19\nTotal de goles: 102", | |
| "time_estimate_min": 20 | |
| }, | |
| { | |
| "id": "es-t2-transformador", | |
| "title": "Transformador de Datos", | |
| "tier": 2, | |
| "prompt": "Escribe una función que convierta notas numéricas a calificaciones españolas.\n\nEscala de calificaciones:\n- 9–10 → Sobresaliente\n- 7–8 → Notable\n- 5–6 → Aprobado\n- 0–4 → Suspenso\n\nEjemplos:\n- convertir_calificacion(9) → \"Sobresaliente\"\n- convertir_calificacion(7) → \"Notable\"\n- convertir_calificacion(5) → \"Aprobado\"\n- convertir_calificacion(3) → \"Suspenso\"\n\nLuego imprime los resultados para una lista de estudiantes: María García (9), Carlos López (7), Ana Martínez (5), Juan Rodríguez (3).", | |
| "expected_output": "Nombre: María García | Nota: 9 | Calificación: Sobresaliente\nNombre: Carlos López | Nota: 7 | Calificación: Notable\nNombre: Ana Martínez | Nota: 5 | Calificación: Aprobado\nNombre: Juan Rodríguez | Nota: 3 | Calificación: Suspenso", | |
| "time_estimate_min": 25 | |
| }, | |
| { | |
| "id": "es-t2-calculadora", | |
| "title": "Calculadora", | |
| "tier": 2, | |
| "prompt": "Escribe una calculadora que acepte dos números y un operador (+ - * /) como entrada del usuario e imprima el resultado. Maneja la división por cero.\n\nUsa variables de prueba hardcodeadas en lugar de input() para que el código se pueda ejecutar sin interacción:\n\nnumero1 = 10\noperador = \"*\"\nnumero2 = 5\n\nSalida esperada:\nResultado: 50.0", | |
| "expected_output": "Resultado: 50.0", | |
| "time_estimate_min": 25 | |
| } | |
| ], | |
| "tier3": [ | |
| { | |
| "id": "es-t3-fifa-rating", | |
| "title": "Sistema de Calificación FIFA", | |
| "tier": 3, | |
| "prompt": "Eres el jefe de scouts de un club español. Escribe un script que calcule una calificación FIFA personalizada para cada jugador basada en sus estadísticas.\n\nFórmula:\nCalificación = (goles × 3) + (asistencias × 2) + (pases_clave × 1.5) - (tarjetas_amarillas × 1) - (tarjetas_rojas × 3)\nCalificación_final = (Calificación / partidos) × 10 → escala 0–99\n\nUsa estos jugadores (hardcodeados como lista):\n- Lionel Messi: 25 partidos, 32 goles, 16 asistencias, 45 pases_clave, 2 amarillas, 0 rojas\n- Karim Benzema: 20 partidos, 28 goles, 8 asistencias, 30 pases_clave, 1 amarilla, 0 rojas\n- Vinicius Jr: 28 partidos, 23 goles, 11 asistencias, 38 pases_clave, 5 amarillas, 1 roja\n- Kylian Mbappe: 24 partidos, 28 goles, 9 asistencias, 35 pases_clave, 2 amarillas, 0 rojas\n- Luka Modric: 26 partidos, 5 goles, 12 asistencias, 55 pases_clave, 4 amarillas, 0 rojas\n- Pedri: 24 partidos, 7 goles, 10 asistencias, 48 pases_clave, 2 amarillas, 0 rojas\n\nImprime la tabla ordenada por calificación (mayor a menor) e indica el MVP.", | |
| "expected_output": "===== SISTEMA DE CALIFICACIÓN FIFA — TEMPORADA 2023/24 =====\nLionel Messi | 25 | 32 | 16 | 99\nKylian Mbappe | 24 | 28 | 9 | 88\nKarim Benzema | 20 | 28 | 8 | 86\nVinicius Jr | 28 | 23 | 11 | 72\nPedri | 24 | 7 | 10 | 61\nLuka Modric | 26 | 5 | 12 | 58\n\n🏆 MVP de la Temporada: Lionel Messi (Calificación: 99)\n📊 Promedio del equipo: 77.33", | |
| "time_estimate_min": 40 | |
| }, | |
| { | |
| "id": "es-t3-piedra-papel-tijera", | |
| "title": "Piedra, Papel, Tijera", | |
| "tier": 3, | |
| "prompt": "Escribe el clásico juego español de Piedra, Papel, Tijera. El jugador compite contra la computadora en una serie de rondas.\n\nRequisitos:\n- El juego lleva la puntuación (victorias, derrotas, empates)\n- La computadora elige aleatoriamente\n- Muestra el resultado de cada ronda\n- Al final muestra estadísticas: victorias, derrotas, empates y porcentaje de victorias\n\nComo el código se ejecuta sin input(), simula 3 rondas hardcodeadas:\nelecciones_jugador = [\"piedra\", \"papel\", \"tijera\"]\n\nUsa random.seed(42) para resultados reproducibles.", | |
| "expected_output": "===== PIEDRA, PAPEL, TIJERA =====\n--- Ronda 1 ---\n🤖 La computadora eligió: tijera\n✅ ¡Ganaste esta ronda!\n--- Ronda 2 ---\n🤖 La computadora eligió: papel\n🤝 ¡Empate!\n--- Ronda 3 ---\n🤖 La computadora eligió: piedra\n❌ ¡Perdiste esta ronda!\n===== RESULTADO FINAL =====\nVictorias: 1 | Derrotas: 1 | Empates: 1\nPorcentaje de victorias: 33.33%", | |
| "time_estimate_min": 45 | |
| }, | |
| { | |
| "id": "es-t3-cribo", | |
| "title": "El Cribo de Eratóstenes", | |
| "tier": 3, | |
| "prompt": "El Cribo de Eratóstenes es un algoritmo matemático de la antigua Grecia, enseñado en todas las escuelas de España. Escribe una implementación del cribo que encuentre todos los números primos hasta n=50 y muestre estadísticas.\n\nEstadísticas requeridas:\n- Total de primos encontrados\n- Primo más pequeño y más grande\n- Primo más cercano a n/2\n- Suma y promedio de todos los primos\n- Porcentaje de primos en el rango\n\nUsa n = 50 (hardcodeado).", | |
| "expected_output": "===== EL CRIBO DE ERATÓSTENES =====\nCalculando números primos hasta 50...\n\nPrimos encontrados:\n2 3 5 7 11 13 17 19 23 29 31 37 41 43 47\n\n===== ESTADÍSTICAS =====\nTotal de primos encontrados: 15\nPrimo más pequeño: 2\nPrimo más grande: 47\nPrimo más cercano a n/2: 23\nSuma de todos los primos: 328\nPromedio de primos: 21.87\nPorcentaje de primos en rango 1-50: 30.0%", | |
| "time_estimate_min": 40 | |
| } | |
| ] | |
| }, | |
| "ur": { | |
| "tier1": [ | |
| { | |
| "id": "ur-t1-fizzbuzz", | |
| "title": "فز بز", | |
| "tier": 1, | |
| "prompt": "ایک پروگرام لکھیں جو 1 سے 30 تک کے اعداد پرنٹ کرے۔\n\nقواعد:\n- اگر عدد 3 پر پوری طرح تقسیم ہو تو \"فز\" پرنٹ کریں\n- اگر عدد 5 پر پوری طرح تقسیم ہو تو \"بز\" پرنٹ کریں\n- اگر دونوں پر تقسیم ہو تو \"فز بز\" پرنٹ کریں\n\nمثال: 1، 2، فز، 4، بز، فز، 7، ...", | |
| "expected_output": "1\n2\nفز\n4\nبز\nفز\n7\n8\nفز\nبز\n11\nفز\n13\n14\nفز بز", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "ur-t1-factorial", | |
| "title": "فیکٹوریل", | |
| "tier": 1, | |
| "prompt": "ایک فنکشن لکھیں جو کسی مثبت پورے عدد کا فیکٹوریل حساب کرے۔\n\nمثالیں:\n- فیکٹوریل(5) ← 120\n- فیکٹوریل(0) ← 1\n- فیکٹوریل(7) ← 5040\n\nیاد رہے: فیکٹوریل(ن) = ن × (ن-1) × ... × 1", | |
| "expected_output": "120\n1\n5040", | |
| "time_estimate_min": 10 | |
| }, | |
| { | |
| "id": "ur-t1-palindrome", | |
| "title": "پیلنڈروم جانچ", | |
| "tier": 1, | |
| "prompt": "ایک فنکشن لکھیں جو یہ بتائے کہ کوئی لفظ یا جملہ پیلنڈروم ہے یا نہیں (یعنی آگے پیچھے سے ایک جیسا پڑھا جائے)۔\n\nمثالیں:\n- \"ملم\" ← پیلنڈروم ہے\n- \"سلام\" ← پیلنڈروم نہیں\n- \"racecar\" ← پیلنڈروم ہے\n\nبڑے اور چھوٹے حروف اور خالی جگہوں کو نظرانداز کریں۔", | |
| "expected_output": "ہاں\nنہیں\nہاں", | |
| "time_estimate_min": 15 | |
| } | |
| ], | |
| "tier2": [ | |
| { | |
| "id": "ur-t2-calculator", | |
| "title": "حساب کتاب", | |
| "tier": 2, | |
| "prompt": "ایک کمانڈ لائن کیلکولیٹر لکھیں جو یہ کام کرے:\n\n- جمع، تفریق، ضرب اور تقسیم\n- صفر سے تقسیم کی غلطی کو سنبھالنا\n- لوپ جو 'خروج' لکھنے تک جاری رہے\n\nاندراج کی شکل: \"عدد آپریٹر عدد\" (مثلاً: \"10 + 5\")", | |
| "expected_output": "کیلکولیٹر شروع ہو گیا ('خروج' لکھیں بند کرنے کے لیے)\n>>> 10 + 5 = 15", | |
| "time_estimate_min": 25 | |
| }, | |
| { | |
| "id": "ur-t2-word-count", | |
| "title": "الفاظ شمار", | |
| "tier": 2, | |
| "prompt": "ایک پروگرام لکھیں جو کسی متن میں ہر لفظ کتنی بار آیا یہ گنے اور سب سے زیادہ استعمال ہونے والے 10 الفاظ دکھائے۔\n\nاندراج: کوئی بھی متن (پروگرام میں لکھا جا سکتا ہے)\nنتیجہ: الفاظ اور ان کی تعداد، زیادہ سے کم ترتیب میں", | |
| "expected_output": "الفاظ شماری کا نتیجہ:\n\"کا\": 15 بار\n\"اور\": 12 بار\n...", | |
| "time_estimate_min": 30 | |
| } | |
| ], | |
| "tier3": [ | |
| { | |
| "id": "ur-t3-data-analysis", | |
| "title": "ڈیٹا تجزیہ", | |
| "tier": 3, | |
| "prompt": "طلبہ کے نمبروں کے ڈیٹا کا تجزیہ کرنے والا اسکرپٹ لکھیں۔\n\nضروریات:\n1. کم از کم 10 طلبہ کا ڈیٹا تیار کریں (نام + نمبر)\n2. اوسط، سب سے زیادہ اور سب سے کم نمبر حساب کریں\n3. کارکردگی کے مطابق گروپ بنائیں (اعلیٰ 90+، اچھا 75-89، ٹھیک 60-74، کمزور <60)\n4. اوسط سے زیادہ نمبر والے طلبہ کی فہرست بنائیں\n5. مکمل رپورٹ تیار کریں", | |
| "expected_output": "طلبہ کی کارکردگی رپورٹ\n====================\nاوسط: 78.5\nسب سے زیادہ: 98 (احمد علی)\nسب سے کم: 45 (سارہ خان)\n...", | |
| "time_estimate_min": 45 | |
| } | |
| ] | |
| } | |
| } | |