¿Cuáles son las mejores preguntas de programación de competencias en lenguaje C para estudiantes universitarios o competencias relativamente calificadas (pueden participar tanto estudiantes de pregrado como de posgrado)?

1: Hay muchas preguntas de programación en la competencia de lenguaje C. Puede hacerlo en JudgeOnline, el sistema de evaluación en línea ACM de la Universidad de Pekín, que puede verificar si su código es correcto.

Sitio web: /JudgeOnline/

Puede registrar una cuenta, que guardará el código correcto que envíe cada vez. Hay muchas preguntas arriba, que cubren una amplia gama de preguntas y diferentes niveles de dificultad. Por supuesto, también hay algunos jueces de otras universidades, como la Universidad Jiao Tong de Shanghai.

2.ACM/ICPC (acm International Collegiate Programming Contest) es la primera competencia con resultados. Y, por supuesto, está el Concurso Nacional de Programación para Estudiantes Universitarios. Cada año, algunos sitios web y organizaciones también organizan concursos de codificación. Por ejemplo, el Concurso de programación Baidu Star organizado por Baidu en los últimos años también es muy influyente. El primer ejemplo de la pregunta de ejemplo dada es una introducción detallada a ACM. Las preguntas de muestra son preguntas preliminares para un concurso de programas en nuestra escuela y son relativamente sencillas. (Además, la programación en C también se puede utilizar en el Concurso de programación ACM, y pueden participar tanto estudiantes de pregrado como de posgrado).

3. Algunas preguntas simples de muestra de ACM (porque es un concurso internacional, el ACM). todas las preguntas son E, las siguientes partes están traducidas)

Reglas H-acm

Descripción

ACM/ICPC (concurso internacional de programación universitaria de ACM) está organizado por ACM (Asociación de Maquinaria de Computación) Concurso anual organizado, iniciado en 1976. Es el evento más influyente en la competencia global de habilidades de programación de computadoras para estudiantes universitarios y está reconocido como la competencia de programación para estudiantes universitarios más grande y de más alto nivel del mundo. Es un escenario amplio para que los concursantes muestren sus talentos informáticos, un reflejo directo de los logros en educación informática de universidades prestigiosas y la mejor oportunidad para que las empresas de información dialogen con los mejores talentos informáticos del mundo. ACM/ICPC calificó para participar en la Final Mundial mediante selección de grupo. En 2006, 2.362 equipos de 1.141 universidades en más de 25 regiones de todo el mundo participaron en la 26ª competición ACM/ICPC. En marzo de 2002, aproximadamente 60 equipos y más de 200 jugadores de todo el mundo participaron en la final en Hawaii.

En la competencia ACM/ICPC, se utiliza el sistema automático de evaluación de preguntas, que no solo reduce la carga de los organizadores de la competencia ACM/ICPC, sino que también hace que la competencia sea más justa y equitativa. Porque durante la competencia, los miembros de la competencia pueden ver sus clasificaciones, lo que hace que la competencia sea más transparente.

Las clasificaciones de la competencia ACM/ICPC son las siguientes:

1: El equipo con más problemas ocupa el primer lugar.

2. Si el número de equipos que resuelven el problema es el mismo, el equipo con el menor tiempo total ocupará el primer lugar.

Nota: Durante la competición, el tiempo para cada pregunta será desde el inicio de la competición hasta que se considere correcta la respuesta a la pregunta. Durante este período, se le impondrá una multa de 20 minutos por cada operación incorrecta y las respuestas correctas no contarán. Luego, el tiempo dedicado a resolver todos los problemas y el tiempo de penalización suman: el tiempo total invertido por el equipo.

Ahora necesitas escribir un programa para clasificar los equipos (asumiendo que no hay más de 200 equipos).

Entrada

Varias filas de datos de prueba, cada fila contiene la información del juego de cada equipo.

El formato de información de la competencia de cada equipo es el siguiente:

La cadena n m representa el nombre del equipo, el número de problemas resueltos y el tiempo total invertido (donde: el nombre del equipo es una cadena con una longitud no mayor a 30, la solución El número de preguntas es un número entero entre 1 ... 10 y el rango de tiempo de penalización no excede el rango de int).

Cuando se ingresa fin, significa que la entrada ha finalizado.

Salida

Emite la información del juego de cada equipo según la clasificación.

Cada equipo competidor ocupa una fila.

El formato de cada línea es:

La cadena n m representa el tiempo total dedicado a resolver el problema del nombre del equipo.

Ejemplo de entrada

amstl 3 65

Danonio 2 50

Lutterdam 3 60

Fin

Resultado de ejemplo

luterdam 3 60

amstl 3 65

danonio 2 50

Creo que necesito una casa flotante.

Descripción

Fred recientemente ha estado considerando comprar un terreno en Luisiana para construir una casa. Mientras inspeccionaba el terreno, Fred descubrió que Luisiana estaba perdiendo 50 millas cuadradas de tierra cada año debido a la erosión del río Mississippi. Fred planeaba vivir allí por el resto de su vida, por lo que no quería que el río erosionara su casa durante su vida. Ahora necesita saber si el agua del río lo erosionará.

Después de investigar más, Fred descubrió que la tierra aquí había sido erosionada formando un semicírculo a lo largo de la orilla del río. Este semicírculo con (0, 0) como centro está dividido en partes superior e inferior por el eje X. La parte inferior del eje X es el río y la parte superior es la orilla del río. Al comienzo del primer año, el semicírculo es 0, lo que indica que la orilla del río no ha sido erosionada. (El semicírculo se muestra en la figura siguiente)

Entrada

El entero positivo n en la primera línea indica cuántos conjuntos de datos deben calcularse. En las siguientes n líneas, cada línea contiene dos números reales X e Y, que representan la posición de la casa que Fred está considerando en el sistema de coordenadas con (0, 0) como origen. y es un número no negativo en millas.

Resultado

Calcule en qué año la casa de Fred en X e Y será erosionada por el agua del río. En correspondencia con los datos de entrada, genere el resultado de su cálculo en el formulario: "Propiedad n: Esta propiedad comenzará a erosionarse en el año z", donde n es el enésimo conjunto de datos y z es el número de años en los que calculó esa erosión. comenzará. Finalmente, se emite la frase "La salida finaliza" para indicar el final del cálculo.

Ejemplo de entrada

2

1,0 1,0

25,0 0,0

Ejemplo de salida

Propiedad 1: Esta propiedad comenzará a erosionarse en 1 año.

Propiedad 2: Esta propiedad comenzará a erosionarse en el año 20.

Finaliza la salida.

Implicación

La casa no estará ubicada exactamente en el límite del semicírculo, ni en el interior ni en el exterior.

El resultado del cálculo del programa que envíe será juzgado automáticamente por el sistema. Sus resultados deben cumplir exactamente con los requisitos de salida, incluidos mayúsculas y minúsculas, puntuación y espacios. Las declaraciones que incluyen la última línea también deben coincidir exactamente.

Todos los datos indicados están en millas.

¡F-N! Cálculo

Descripción

n! = N×(N-1)×(N-2)×(N-3)×N....

Entrada

Ingrese un entero positivo m en la primera línea , lo que significa ¿Cuántos n se deben calcular a continuación?

La siguiente línea comienza con m enteros positivos (1 ≤ N ≤ 11, m ≤ 9).

Salida

Emite los resultados factoriales de estos m enteros positivos, uno por línea.

Ejemplo de entrada

Tres

1

2

Cinco

Ejemplo de salida

1

2

120

Histograma I-vertical

Descripción

Escriba un programa que lea cuatro líneas de entrada de texto en mayúsculas (es decir, todas las letras mayúsculas) de un archivo de entrada (no más de 72 caracteres por línea) e imprima un histograma vertical que muestre cada letra (pero no espacios, dígitos) o puntuación) en total. entrada de mayúsculas. Formatee la salida exactamente como se muestra.

Invertir

*Línea 1..4: Cuatro líneas de texto en mayúsculas, no más de 72 caracteres por línea.

Salida

* Línea 1..: Varias líneas con asteriscos y espacios, seguidas de una línea de letras mayúsculas separadas por espacios. No imprima espacios en blanco innecesarios al final de ninguna línea. No imprima ninguna línea en blanco al principio.

Ejemplo de entrada

El ágil zorro marrón saltó sobre el perro perezoso.

Esta es una prueba para su

programa de histograma.

¡Hola!

Resultado de ejemplo

*

*

* *

* * * *

* * * *

* * * * * *

* * * * * * * * * *

* * * * * * * * * * * * * *

* * * * * * * * * * * * * * * * * *

* * * * * * * * * * * * * * * * * * * * * * * * * * * *

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

J- ¿ganó el blanco? ¿O ganará el negro?

Descripción

Cinderalla se ha obsesionado recientemente con jugar al backgammon. Pero cuando juega con otros amigos, siempre pierde, por lo que quiere usar una computadora para ayudarla a determinar qué lado gana el juego. En aras de la simplicidad, primero eliminemos algunas reglas. Creemos que mientras haya cinco piezas conectadas en un lado del tablero, se determinará qué lado gana. Tu tarea es escribir un programa para determinar qué lado gana el juego que te damos.

Entrada

Solo hay un conjunto de datos de entrada. La primera línea tiene dos números enteros positivos m, n (5 ≤ m, n ≤ 10), que representan el número de filas y columnas del tablero de ajedrez, respectivamente. Las siguientes 2*n 1 líneas son la descripción del tablero de ajedrez, que consta de " ", "-" y "|", entre las cuales "*"

Salida

tiene solo una conjunto de datos de salida. Si las blancas ganan, ¡genera las blancas para ganar! , Si el negro gana, ¡genera el negro para ganar!

Entrada de ejemplo

5 10

- - - - - - - - -

|* | | |

- - - - - - - - - |*|#| - - - - - -

| |#|*|#|#| || |

- - - - - - - - - -

Ejemplo de resultado

¡Las blancas ganan!

Implicación

Un lado de un determinado juego de ajedrez debe ganar.