¿Dónde en la vida real se encuentra la distribución normal y dónde no? Proporcione ejemplos concretos con una explicación de por qué los datos están distribuidos normalmente o no.
Data Analyst
Afanasy había estado trabajando durante 2 semanas en escribir un código capaz de resolver crucigramas japoneses con soporte para nueve colores, cuando en una reunión de equipo, un colega le dijo que podía manejar la tarea más rápido él mismo, y que ya no tenía sentido en el programa. Pero Afanasy, siendo optimista, decidió seguir practicando esta tarea y hacer lo siguiente: estimar qué tan bien maneja su colega los crucigramas. Para esta evaluación, eligió un análogo de la métrica IoU — el cálculo será similar al clásico Intersection Over Union, pero por colores. Funciona de la siguiente manera: cada celda coincidente en el original y en la solución por color suma 1 al numerador, y en el denominador, se suma 1 por cada celda en el original y en la solución (para celdas coincidentes, solo se suma una). Después, se realiza un promedio sobre el número de colores en la imagen original, redondeado a dos decimales; el cero no se considera un color, por lo que la métrica no debe calcularse para celdas de este color. La entrada comienza con una línea que contiene el número de filas n y columnas m (en ese orden). Luego, siguen 2n líneas, que contienen m números separados por espacios: las primeras n líneas corresponden a la crucigrama enviado, y las siguientes n — a la imagen original. Se asume que cada línea, comenzando desde la segunda, contiene exactamente m números. Como respuesta, debe imprimir un número redondeado a dos decimales, como en los ejemplos. Aquí algunos ejemplos: 1. Primer ejemplo [phone] -> 1.0 Explicación: la contribución de las celdas coincidentes y no coincidentes (1.0 + 1.0 + 1.0 + 1.0) / número de colores (4) 2. Segundo ejemplo [phone] -> 0.08 Explicación: la contribución de las celdas coincidentes y no coincidentes (0.25 + 0.0 + 0.0) / número de colores (3); los ceros no se consideran, ni como celdas en las representaciones ni en el número de colores. 3. Tercer ejemplo [phone] donde la imagen enviada comienza [phone] — donde termina la imagen enviada 0 1 2 — donde comienza la imagen original [phone] -> 0.47 Explicación: la contribución de las celdas coincidentes y no coincidentes (0.4 + 0.5 + 0.5) / número de colores (3); los ceros no se consideran ni como celdas en las representaciones ni en el número de colores. 4. Cuarto ejemplo [phone] -> 0.0 Explicación: la contribución de las celdas coincidentes y no coincidentes (0.0) / número de colores (1); los ceros no se consideran ni como celdas en las representaciones ni en el número de colores.
Escribe un código en Python que calcule el producto escalar de dos vectores comprimidos en RLE en una sola pasada.
val_a, val_b = 0, 0 t = None mientras i < len(a) o j < len(b): a_next = a[i][0] si i < len(a) más float('inf') b_next = b[j][0] si j < len(b) más float('inf') si a_next < b_next: val_a = a[i][1] t = a[i][0] i += 1 elif b_next < a_next: val_b = b[j][1] t = b[j][0] j += 1 más: val_a = a[i][1] val_b = b[j][1] t = a[i][0] i += 1 j += 1 result.append((t, val_a + val_b)) return result
Explica la lógica detrás de la solución del problema sum_series: ¿cómo construir la suma de dos series temporales escalonadas?
¿Cuál es el orden lógico de ejecución de FROM, JOIN, GROUP BY y SELECT en esta consulta SQL?
¿Cómo configurarías una prueba A/B para verificar un nuevo algoritmo de búsqueda? ¿Cómo determinarías el tamaño de muestra necesario y la duración de la prueba?
Pseudocódigo sum_series(a={{1, 2}, {5, 1}}, b={{2, 4}, {3, 6}, {9, 7}}) -> {{1, 2}, {2, 6}, {3, 8}, {5, 7}, {9, 8}} def sum_series(a, b): result = [] i , j = 0, 0 val_a, val_b = 0, 0 while i < len(a) or j < len(b): a_next = a[i][0] if i < len(a) else float('inf') b_next = b[j][0] if j < len(b) else float('inf') if a_next <= b_next: val_a = a[i][1] t = a[i][0] i += 1 else: val_b = b[j][1] t = b[j][0] j += 1 result.append((t, val_a + val_b)) return result
¿Cómo recopilar respuestas de ground truth para la referencia en geometría?
¿Cómo se llama el operador de ordenamiento en SQL y cuándo se ejecuta? ¿Dónde se encuentra LIMIT en el orden de ejecución?
B. Prefijos y Sufijos Dado un array ordenado de n ceros. En cada paso, puedes elegir un número arbitrario de los primeros o últimos elementos de este array, y sumar uno a todos los elementos seleccionados. ¿Es posible alcanzar el estado especificado del array después de alguna cantidad de estas operaciones? Formato de entrada La primera línea contiene un entero 1 ≤ n ≤ 100000 — el número de elementos en el array. La segunda línea contiene n números enteros no negativos a1, a2, ..., an separados por espacios, donde ai ≤ 10^18 — los elementos finales deseados. Formato de salida Imprime "YES" si tal estado es alcanzable, y "NO" si no lo es. Ejemplo Entrada [phone] Salida YES Nota Los estados [phone] se pueden alcanzar de la siguiente manera: sumar uno a los primeros tres elementos, resultando en [phone] sumar uno a los últimos cuatro elementos, resultando en [phone] sumar uno al último elemento, resultando en [phone]
-- Sobre las campañas promocionales enviadas a los usuarios: -- 2.1 Escriba una consulta que muestre la cantidad de usuarios que recibieron con éxito la comunicación, para cada campaña. -- 2.2 Modifique la consulta para mostrar: la cantidad de usuarios que no recibieron ninguna comunicación exitosa en total, para cada campaña. -- 3. Se añadió un campo más a la tabla communications: event_timestamp – fecha y hora del evento de entrega de la comunicación en formato '%Y-%m-%d %H:%M:%S'. -- Para todas las campañas, incluidas las no lanzadas, calcule la métrica: la proporción de usuarios para los cuales la entrega del mensaje exitoso se realizó en el primer intento. -- Se pueden usar funciones de ventana, o no, pero es importante que la consulta sea óptima.
Enumere claramente los criterios que deben cumplirse para que los datos tengan una distribución normal.
¿Tiene alguna pregunta para el entrevistador?
Pseudocódigo sum_series(a={{1, 2}, {5, 1}}, b={{2, 4}, {3, 6}, {9, 7}}) -> {{1, 2}, {2, 6}, {3, 8}, {5, 7}, {9, 8}} def sum_series(a, b): result = [] i , j = 0, 0 val_a, val_b = 0, 0 while i < len(a) or j < len(b): a_next = a[i][0] if i < len(a) else float('inf') b_next = b[j][0] if j < len(b) else float('inf') if a_next < b_next: val_a = a[i][1] t = a[i][0] i += 1 else: val_b = b[j][1] t = b[j][0] j += 1 result.append((t, val_a + val_b)) return result
-- Los especialistas en marketing lanzan campañas promocionales en la aplicación del servicio. Hay dos tablas: -- campaigns – lista de campañas -- - campaign – nombre de la campaña -- - action_type – tipo de campaña: "push" o "banner" -- communications – registro del backend con envíos de comunicaciones de estas campañas a los usuarios -- - user_id – identificador del usuario -- - campaign – nombre de la campaña -- - status – estado del evento: "success" o "error" --------------------------------------------------------------------------- -- 1. Inicialmente, en la tabla campaigns hay 4 filas: -- | campaign | action_type | -- |-------------|-------------| -- | promo_dogs | push | <- duplicado aleatoriamente -- | promo_cats | banner | -- | promo_cats | banner | <- dos filas -- | promo_rats | push | -- También se sabe que: -- las campañas promo_dogs y promo_cats se realizaron con éxito en 100 usuarios y cada usuario recibió una comunicación, -- y promo_rats solo está en planificación. -- 1.1 ¿Qué mostrará la consulta: SELECT campaign, COUNT(*) as rows, COUNT(DISTINCT co.user_id) AS users FROM campaigns AS ca INNER JOIN communications AS co ON ca.campaign = co.campaign GROUP BY ca.campaign AS campaign -- 1.2 ¿Cómo cambiará la respuesta si se cambia el tipo de JOIN a LEFT?
¿Qué es un benchmark y cómo evaluarías la calidad de un modelo multimodal?
¿La rentabilidad de las acciones [nombre] estará distribuidamente normal? (Incrementos de precio por minuto durante toda la historia de negociación desde 2000 hasta 2026)
-- 2. La tabla campaigns ha sido arreglada: se eliminó la duplicación, se añadió una clave (PK). -- Se realizaron más campañas, debido a errores los usuarios comenzaron a experimentar intentos fallidos de entrega de comunicaciones, y a algunos ni siquiera se les mostró. -- Sobre las campañas promocionales enviadas a los usuarios: -- 2.1 Escriba una consulta que muestre la cantidad de usuarios que recibieron con éxito la comunicación, para cada campaña. -- 2.2 Modifique la consulta para mostrar: la cantidad de usuarios que no recibieron ninguna comunicación exitosa en total, para cada campaña. -- 3. Se añadió un campo más a la tabla communications – event_timestamp – fecha y hora del evento de entrega de la comunicación en formato '%Y-%m-%d %H:%M:%S'. -- Para todas las campañas, incluidas las no lanzadas, calcule la métrica: la proporción de usuarios para los cuales la entrega del mensaje exitoso se realizó en el primer intento. -- Se pueden usar funciones de ventana, o se puede hacer sin ellas, pero es importante que la consulta sea óptima.
D. Fuegos artificiales chinos Vladimir compró un conjunto de 3 fuegos artificiales chinos. Se ven exactamente iguales y están mezclados en una caja, pero según las instrucciones, tienen diferentes fiabilidades: 1. "Elite" — tasa de defectos del 10% (probabilidad de éxito 0.9). 2. "Estándar" — tasa de defectos del 20% (probabilidad de éxito 0.8). 3. "Economía" — tasa de defectos del 40% (probabilidad de éxito 0.6). Vladimir toma aleatoriamente el primer fuego artificial, lo enciende, y funciona correctamente. Contento, Vladimir decide lanzar los otros dos fuegos artificiales uno tras otro. ¿Cuál es la probabilidad de que tanto el segundo como el tercer fuego artificial también funcionen correctamente — sin defectos? Redondea la respuesta a tres decimales. Formato de salida Un número decimal redondeado a 3 decimales. Por ejemplo, 0.98 o 0.999