Constellation Knowledge Network - Preguntas y respuestas sobre la interpretación de los sueños - Búsqueda urgente sobre temas relacionados con tecnologías de la información en el primer semestre de secundaria

Búsqueda urgente sobre temas relacionados con tecnologías de la información en el primer semestre de secundaria

Semifinales de la Liga Olimpiada Nacional de Informática (NOIP2008)

Equipo de promoción

1. Descripción general del tema

Vista estereoscópica del juego de pases de números ISBN

.

Título en inglés isbn ball chart

Nombre del archivo ejecutable isbn ball chart

Ingrese el nombre del archivo ISBN. inseat.inball.indrawing.in.

Nombre del archivo de salida ISBN.

El límite de tiempo para cada punto de prueba es 1 segundo 1 segundo 1 segundo 1 segundo.

Puntos de prueba 10 10 10 10

La puntuación de cada punto de prueba es 10 10 10 10.

Método de comparaciónComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completo

Tipo de temaTradicionalTradicionalTradicional

2. p>Para ISBN en lenguaje Pascal. pasar asiento pas bola pas dibujo pas

Para el ISBN del lenguaje C. cseat.cball.cdrawing.c.

Para ISBN en lenguaje C++. CPPSEAT. CPPBall. CPPDibujo. CPP.

Tres. Comando de compilación (sin ningún modificador de optimización)

Para lenguaje Pascal, FPC ISBN. Asientos PASFPC. Balón PASFPC. Dibujos PASFPC. Aprobar.

Para lenguaje c gcc -o ISBN.

ISBN .c gcc–o asiento

asiento c gcc–o bola

bola . . c

Para lenguajes C++, g++–o ISBN

ISBN .CPP g++–o asiento

CPP g++–o bola

<. p>bola . CPP g++–o

Dibujo

Dibujo cpp

Cuatro. Límite de memoria en ejecución

La memoria en ejecución máxima es 50 m 50 m 50 m 50 m.

Notas:

1. Los nombres de los archivos (nombres de programas y nombres de archivos de entrada/salida) deben estar en minúsculas.

2. El tipo de valor de retorno de la función main() en C/C++ debe ser int, y el valor de retorno cuando el programa finaliza normalmente debe ser 0.

3. La configuración de la máquina utilizada en la evaluación unificada nacional es: CPU 1,9 GHz, memoria 512 M. El límite de tiempo anterior está sujeto a esta configuración.

Cada provincia puede ajustar el límite de tiempo según su configuración específica durante el autotest.

1. Número ISBN

(isbn.pas/c/cpp)

Descripción del problema

Cada libro publicado oficialmente tiene un número ISBN correspondiente. El código ISBN incluye 9 dígitos, código de identificación de 1 dígito y separador de 3 dígitos. Su formato especificado es "X-x-xxx-xxxxx-x-X", donde el símbolo "-" es el separador (signo menos en el teclado), y finalmente Uno. El dígito es el código de identificación, como 0-670-8218. El primer dígito del código ISBN representa el idioma de publicación del libro, por ejemplo, 0 representa inglés, los tres dígitos después del primer separador "-" representan la editorial, por ejemplo, 670 representa Viking Press después del segundo separador. representa el número de publicación del libro; el último dígito es el código de identificación.

El código de identificación se calcula de la siguiente manera:

El primer número se multiplica por 1, el segundo número se multiplica por 2...y así sucesivamente. Utilizando el resultado obtenido mod 11, el resto es el código de identificación. Si el resto es 10, el código de identificación es la letra mayúscula…, 9, y luego se suma, que es 0× 1+6×.

Su tarea es escribir un programa para determinar si el código de identificación en el número ISBN ingresado es correcto. Si es correcto, genere "correcto"; si es incorrecto, genere el número ISBN que cree que es. correcto.

Entrada

El archivo de entrada isbn.in tiene solo una línea, que es una secuencia de caracteres que representa el número ISBN de un libro (asegúrese de que la entrada cumpla con los requisitos de formato del ISBN número).

Salida

Emite una línea de isbn.out***. Si el código de identificación del número ISBN ingresado es correcto, genere "correcto"; de lo contrario, genere el número ISBN correcto en el formato especificado (incluido el separador "-").

Muestra de entrada y salida 1

isbn.in isbn.out

0-670-82162-4 derecha

Entrada y salida Muestra 2

isbn.in isbn.out

0-670-82162-0 0-670-82162-4

2 Filas de asientos

p>

p>

(seat.pas/c/cpp)

Descripción del problema

Durante la clase, siempre hay algunos estudiantes susurrando a las personas que los rodean. Esto es muy común entre los profesores de primaria. Un dolor de cabeza. Sin embargo, Xiaoxue, el director, descubrió algunos fenómenos interesantes. Cuando se confirmen los asientos de los estudiantes, sólo un número limitado de parejas D se susurrarán entre sí en clase. En el aula, los estudiantes se sientan en las filas M, en las filas I y en las filas I.

La posición del alumno es (I,J). Para facilitar la entrada y salida de los estudiantes, existen K pasillos horizontales y L pasillos longitudinales en el aula. Entonces, la inteligente Xiaoxue pensó en una manera de reducir el problema de los estudiantes que susurran en clase: planeó reorganizar las mesas y sillas y cambiar la posición del pasillo entre las mesas y las sillas, porque si un pasaje separa a dos estudiantes que pueden susurrar , no lo harán. Se susurrarán entre sí.

Por favor, ayuda a escribir un programa para Xiaoxue y ofrece el mejor plan de división de canales. Según este plan, el número de estudiantes que susurran entre sí en clase es mínimo.

Entrada

En la primera línea del archivo de entrada seat.in, hay cinco números enteros separados por espacios, a saber, m, n, k, l, d (2

En la siguiente línea D, cada línea tiene cuatro números enteros separados por espacios. Los cuatro números enteros, Yi, Pi, Qi en la primera línea I representan la posición sentada (, Yi) y (Pi, Qi). susurran entre sí (se garantiza que la entrada será adyacente antes y después o izquierda y derecha)

Los datos de entrada garantizan la unicidad de la solución óptima

El asiento del archivo de salida. out*** tiene dos líneas

La primera línea contiene k enteros, a1a2...aK, que significa entre A1 y A1, y entre A2 y a2+1. , entre AK y aK+1, donde AI Ai+1, cada dos números enteros están separados por un espacio (sin espacio al final de la línea)

La segunda línea contiene L enteros, b1b2.. .bk, indica que el canal debe abrirse entre b1 y b1, b2 y b2+1,..., entre bL y bL+1, donde bibi+1, cada dos Separa los números enteros con espacios (sin espacios al final de la línea)

Muestra de entrada-salida

Asentarse, sentarse fuera

4 5 1 2 3

4 2 4 3

2 3 3 3

2 5 2 4 2

2 4

Ingrese la descripción del ejemplo de salida

* *

※ + +

1 2 3 4 5

Arriba En la imagen, las posiciones de los tres pares Los estudiantes que susurran están marcados con los símbolos *, ※ y +. Las posiciones de las tres líneas gruesas en la imagen representan los canales. El plan de división de canales que se muestra en la imagen es la única mejor solución. > Juego de pases

(ball.pas/c/cpp)

Descripción del problema

Durante la clase de educación física, el maestro de Xiaoman solía jugarlo con sus compañeros. Esta vez, el maestro lleva a los estudiantes a jugar el juego de pases. Las reglas del juego son las siguientes: N estudiantes se paran en círculo y uno de ellos comienza a pasar cuando el maestro toca el silbato. pasa el balón a uno de los dos alumnos que está a su alrededor (izquierda o derecha). Cuando el profesor vuelva a tocar el silbato, el alumno que no pase el balón es el perdedor, te dará un espectáculo.

El hombrecito inteligente planteó una pregunta interesante: ¿Cuántos métodos de pase diferentes puede pasar el balón del hombrecito después de m veces? ¿Los dos métodos de pase se consideran métodos diferentes si y solo si? el orden de los estudiantes que reciben la pelota es diferente. Por ejemplo, hay tres estudiantes, No. 1, No. 2 y No. 3. Suponiendo que Xiaoman es el No. 1, la forma de devolverle la pelota a Xiaoman después de las tres. los pases son 1->2->3->1 y 1->3->2->1, ***2 tipos.

Entrada

El archivo de entrada ball.in*** tiene dos números enteros n, m (3

Salida

El archivo de salida ball .out*** tiene una fila de números enteros que representan el número de métodos que satisfacen el significado del problema

Muestras de entrada y salida

La pelota está dentro y la pelota está. out

3 3. 2

Limitaciones

40% de los datos se ajustan a: 3

100% de los datos se ajustan a : 3

4. Polígono

(drawing.pas/c/cpp)

Descripción del problema

Xiao Yuan es un chico inteligente A menudo les cuenta a los niños que lo rodean cosas que cree que son interesantes. Recientemente, les va a explicar dibujos tridimensionales. Por favor, ayúdelo a dibujar dibujos tridimensionales.

Obuchi Keizo tiene un área rectangular con un área de m*n. Hay m*n cuadrados con una longitud de lado de 1. Cada cuadrado está apilado con algunos bloques de construcción del mismo tamaño (los). longitud de los bloques de construcción). El ancho y el alto son ambos 1). Xiaoyuan quiere que imprimas un dibujo en 3D de estos bloques. Definimos cada bloque de construcción en el siguiente formato, sin voltear ni rotar, sino que simplemente se colocan estrictamente en esta forma:

+ - +

//|Alto

+ - + |

| +

| |/Ancho

+ - +

Largo

Cada vértice está representado por 1 signo más "+", la longitud está representada por 3 "-", el ancho está representado por 1 "/" y la altura está representada por 2 "|". Los códigos ASCII de los caracteres "+"-"/"|" son 43, 45, 47 y 124 respectivamente. Este carácter (código ASCII 46) debe aparecer como fondo, es decir, la parte en blanco en el La imagen estereoscópica debe reemplazarse por '.. Tridimensional. El dibujo es el siguiente:

Si dos bloques de construcción son adyacentes entre sí, el esquema es el siguiente:

. .+ - + - +

/p>

+ - + - + |

| /p>

+ - + - + ..

Si dos bloques de construcción están adyacentes entre sí de esta manera:

..+ - +

. - + |

| +

| |/|

+ - + |

| >

| |/.

+ - + ..

Si dos bloques de construcción están adyacentes entre sí, el diagrama esquemático es el siguiente:

….+ - +

…/ /|

..+ - + |

+

+ - + | /.<. /p>

| + ..

|/…

+ - +….

En lo tridimensional diagrama, la definición está ubicada en (m, el vértice del primer bloque de construcción de abajo hacia arriba (es decir, el bloque de construcción más bajo) en la 1) cuadrícula (es decir, la cuadrícula en la fila m y la columna 1) es la inferior esquina izquierda de toda la imagen

Entrada

La primera línea del archivo de entrada dibujo.in consta de dos números enteros myn separados por espacios, lo que indica que hay m*n. grids (1

Las siguientes m filas son una matriz m*n, cada fila tiene n números enteros, separados por espacios, donde el número entero en la fila I y la columna J representa cuántos bloques de construcción están apilados en la cuadrícula en la fila I y la columna J ( 1

Salida

El archivo de salida dibujo.out contiene el diagrama tridimensional requerido por la pregunta, que es una matriz de caracteres con k filas y l columnas, donde k y l indican que se requieren al menos k filas y l según las regulaciones

Muestra de entrada-salida

Dibujar entrada y salida

3 4

2 2 1 2

2 2 1 1

3 2 1 2...+ - + - +...+ - +

..+ - + / / |../ /|

/ /|-+ - + |.+ - + |

+ -. + |/ /| +-| /p>

+ - + - |/+ - + |/| +

| |/| + ..

+ - + - + - + |/ ...

| >| | | |/ .....

+ - + - + - + - +...

Semifinales de la Liga Olimpiada Nacional de Informática (NOIP2008) p>

Equipo de mejora

1. Descripción general del tema

Clasificar pilas dobles de papel de transferencia, como cerillas de mono tonto

Dos pilas de títulos en inglés información de coincidencia de palabras

Nombre del archivo ejecutable Mensaje de coincidencia de palabras dos pilas

Ingrese la palabra del nombre del archivo, inmatches. en el mensaje. En parejas.

Palabra del nombre del archivo de salida. out coincide con el mensaje outtwo.

El límite de tiempo para cada punto de prueba es 1 segundo 1 segundo 1 segundo 1 segundo.

Puntos de prueba 10 10 10 10

La puntuación de cada punto de prueba es 10 10 10 10.

Método de comparaciónComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completoComparación de texto completo

Tipo de temaTradicionalTradicionaltradicional

Segundo, envíe el nombre del archivo fuente

Para palabras en lenguaje Pascal. pas coincide con .pas mensaje .paswostack .pas

Para palabras en lenguaje C. c coincide. c mensaje. cTWOStack.c.

Para word en lenguaje C++. Partido CPP. Mensaje del PP. Segunda pila de CPP. CPP.

Tres. Comandos de compilación (excluyendo cualquier modificador de optimización)

Para fpcword en lenguaje Pascal. coincidencias de pasfp. mensajepasfpc. pasfptwostack. Aprobar.

Para el lenguaje C gcc–o palabra palabra. cgcc–o coincide con el mensaje cgcc–o cgcc–o dos pilas dos c

Para el lenguaje C++ G++. -o palabra palabra. CPPG++omatch. CPPG++oMensaje. CPPG++ o dos pilas dos pilas. CPP.

Cuarto, límite de memoria en ejecución

La memoria en ejecución máxima es 50 m 50 m 50 m 50 m.

Notas:

1. Los nombres de los archivos (nombres de programas y nombres de archivos de entrada/salida) deben estar en letras mayúsculas.

2. El tipo de valor de retorno de la función main() en C/c++ debe ser int, y el valor de retorno cuando el programa finaliza normalmente debe ser 0.

3. La configuración de la máquina utilizada en la evaluación unificada nacional es: CPU 1,9 GHz, memoria 512 M. El límite de tiempo anterior está sujeto a esta configuración. Cada provincia puede ajustar el límite de tiempo según su configuración específica durante la autoprueba.

1. Stupid Monkey

(wird.pas/c/cpp)

Descripción del problema

Stupid Monkey tiene un vocabulario reducido. Me duele la cabeza cada vez que hago preguntas de opción múltiple en inglés. Pero encontró un método y se ha demostrado experimentalmente que la probabilidad de seleccionar la opción correcta con este método es muy alta.

La descripción específica de este método es la siguiente: supongamos que maxn es el número de veces que aparece la letra con la frecuencia más alta en una palabra y minn es el número de veces que aparece la letra con la frecuencia más baja en una palabra. Si maxn-minn es un número primo, entonces el mono estúpido piensa que es una palabra auspiciosa y es probable que esa palabra sea la respuesta correcta.

Entrada

El archivo de entrada word.in tiene solo una línea, que es una palabra. Solo pueden aparecer letras minúsculas y la longitud es inferior a 100.

Salida

El archivo de salida word.out*** tiene dos líneas. La primera línea es una cadena. Suponiendo que la palabra de entrada es una palabra de la suerte, genere la "palabra de la suerte". "; de lo contrario, generará "Sin respuesta";

La segunda línea es un número entero. Si la palabra de entrada es una palabra de la suerte, genere el valor de maxn-minn; de lo contrario, genere 0.

Muestra de entrada y salida 1

Entrada de palabras Salida de palabras

Palabra de la suerte incorrecta

2

I/ OExplicación del ejemplo 1

En la palabra error, la letra r con mayor frecuencia aparece tres veces y la letra con menor frecuencia aparece una vez 3-1=2, y 2 es un número primo.

Muestra de entrada y salida 2

Entrada de palabras salida de palabras

Juegos Olímpicos sin respuestas

Muestra de entrada y salida 2 explicación

En la palabra Juegos Olímpicos, la letra I con mayor frecuencia aparece dos veces y la letra con menor frecuencia aparece una vez, 2-1=1 y 1 no es un número primo.

2. Ecuación de cerillas

(matches.pas/c/cpp)

Descripción del problema

Te doy n cerillas, ¿cuántas? ¿Puedes deletrear ecuaciones como "A+B=C"? En la ecuación, a, byc son números enteros escritos con cerillas (si el número no es cero, el bit más alto no puede ser 0). Utilice cerillas para deletrear los números del 0 al 9, como se muestra en la imagen:

Nota:

1. El signo más y el signo igual requieren dos cerillas cada uno.

2. Si A≠B, entonces A+B=C y B+A=C se consideran ecuaciones diferentes (A, B, C >=0)

3. Se deben utilizar todas las N cerillas.

Entrada

Ingrese una línea *** * en el archivomatches.in, y otro número entero n (n

Salida

El archivo de salida coincide.out*** una línea, que indica el número de ecuaciones diferentes que se pueden deletrear

Muestras de entrada y salida 1

La entrada coincide

14 2

Ejemplo 1 de E/S

Las dos ecuaciones son 1=1 y 1+0=1

Entrada y salida. Muestra 2

Partidos.

Introduce las coincidencias. Out

18 9

Explicación de la muestra 2 de entrada y salida

Las nueve ecuaciones son:

4=4

11=11

1+10=11

2+2=4

2+7=9

4+0=4

7+2=9

11=11

11+0=11

Pasa la nota

(wassage.pas/c/cpp)

Descripción del problema

Xiaoyuan y Xiaoxuan son buenos amigos y compañeros de clase. Siempre tienen un sinfín de temas de los que hablar juntos. En una actividad de desarrollo de calidad, los compañeros de clase se dispusieron a hacer una matriz con m filas yn columnas. Xiaoyuan y Xiaoxuan se colocaron en ambos extremos de la diagonal de la matriz y no podían hablar entre sí directamente. Afortunadamente, pueden comunicarse pasándose notas. Las notas se enviarán entre sí a través de muchos compañeros de clase. Xiaoyuan se encuentra en la esquina superior izquierda de la matriz, con coordenadas (1, 1), y Xiaoxuan se encuentra en la esquina inferior derecha de la matriz, con coordenadas (m, n). Las notas de Xiaoyuan a Xiaoxuan solo se pueden pasar hacia abajo o hacia la derecha, y las notas de Xiaoxuan a Xiaoyuan solo se pueden pasar hacia arriba o hacia la izquierda.

Durante el evento, Xiaoyuan esperaba enviar una nota a Xiaoxuan y esperaba que Xiaoxuan le diera una respuesta. Todos los miembros de la clase pueden aprobarlo, pero sólo una vez. En otras palabras, si esta persona ayudó cuando Xiao Yuan le entregó una nota a Xiao Xuan, no ayudaría cuando Xiao Yuan se la entregó a Xiao Yuan. viceversa.

Otra cosa a tener en cuenta es que la preferencia de cada estudiante en la clase puede ser alta o baja (nota: Xiaoyuan y Xiaoxuan no tienen una definición de preferencia, ingréselo con 0), puede usar 0-100 se expresa como un número natural, cuanto mayor sea el número, mejor. Xiaoyuan y Xiaoxuan esperan encontrar tantos estudiantes con gran amabilidad como sea posible para ayudar a pasar la nota, es decir, encontrar dos caminos para pasar la nota de un lado a otro, de modo que se pueda maximizar la amabilidad de los estudiantes en estos dos caminos. Ahora, ayude a Xiaoyuan y Xiaoxuan a encontrar estos dos caminos.

Entrada

La primera línea del archivo de entrada message.in tiene dos números enteros myn separados por espacios, lo que indica que hay m filas yn columnas en la clase (1< /p >

Las siguientes m filas son una matriz m*n Los números enteros en la fila I y la columna J representan la amabilidad de los estudiantes sentados en la fila I y la columna J. Los n números enteros en cada fila están separados por espacios <. / p>

Salida

El archivo de salida message.out*** contiene un número entero, que representa la suma máxima de la amabilidad de los dos estudiantes que participaron en el envío de la nota

<. p>Muestra de entrada-salida

Entrada de mensaje Salida de mensaje

3 3

0 3 9

2 8 5

5 7 0 34

Limitaciones

El 30% de los datos cumple: 1

El 100% de los datos cumple: 1

4. Clasificación de pila dual

(twostack.pas/c/cpp)

Descripción del problema

Tom ha estado estudiando recientemente un problema de clasificación interesante. Como se muestra en la figura, a través de dos pilas S1 y S2, Tom espera ordenar la secuencia de entrada en orden ascendente mediante las siguientes cuatro operaciones

Operación a

Si la secuencia de entrada es. no está vacía, empuja el primer elemento.

Operación b

Si la pila S1 no está vacía, el elemento superior de la pila S1 aparece en la secuencia de salida. >

Operación c

Si la secuencia de entrada no está vacía, empuje el primer elemento a la pila S2

Operación d

Si la pila S2 no está. vacío, empuje el elemento superior de la pila S2. Aparecerá en la secuencia de salida.

Si una permutación 1~n P puede hacer que la secuencia de salida sea 1, 2,...(n-1), N. , Tom lo llama "disposición ordenable de doble pila". Por ejemplo, (1, 3, 2, 4) es una "secuencia ordenable de doble pila", pero (2, 3, 4, 1) no lo es. La siguiente figura muestra una clasificación (1, 3, 2, 4):

Por supuesto, existen varias secuencias de operaciones de este tipo posibles. En el ejemplo anterior (1, 3, 2, 4),

Entradas

La primera línea del archivo de entrada twostack.in es el número entero n.

La segunda línea tiene n números enteros positivos separados por espacios, formando un disposición de 1 ~ n.

Salida

Emite una línea de archivo twostack.out*** Si la disposición de entrada no es "disposición ordenable de doble pila", genera el número 0. ; de lo contrario, genera la secuencia de operaciones con el orden lexicográfico más pequeño, entre cada dos operaciones Separadas por espacios, sin espacios al final de la línea

Muestras de entrada y salida 1

. Doble pila. Doble pila. Salida

Cuatro

1 3 2 4 a b a b a b a b a b

Muestra de entrada y salida 2

Pila dual. Doble pila.

Salida

Cuatro

2 3 4 1 0

Muestras de entrada y salida 3

Pila dual. Doble pila.

Out

2 3 1 a c a b b d

Limitación

30% de los datos se ajusta a:n

50 % de los datos son consistentes con: n

100% de los datos son consistentes con: n

上篇: ¿Cómo observar el diseño Feng Shui de una villa y cuáles son los tabúes? 下篇: ¿Se pueden casar las vacas y los caballos?
Artículos populares