¿Dónde puedo obtener un código para la entrada y salida rápida de enteros, enteros largos largos, flotante, doble, caracteres y cadenas para C?

getchar_unclocked y putchar_unlocked

puedes usar cin / cout pero este es el método más lento que he usado.
entonces aquí viene scanf / printf pero aún más lento.
Estos métodos son seguros para subprocesos. Como verá en muchos problemas de competencia, advierten sobre un gran conjunto de datos y aconsejan utilizar un método de entrada y salida más rápido.
ahora puedes usar getchar_unlocked y putchar_unlocked . Estas son macros.
Aquí está el código.

#include
#include
#define gc getchar_unlocked
#define pc (x) putchar_unlocked (x);
usando el espacio de nombres estándar;
vacío escaso (int & x)
{
registrarse int c = gc ();
x = 0;
para (; c 57; c = gc ());
para (; c> 47 && c <58; c = gc ())
{
x = (x << 1) + (x << 3) + c-48;
}

}

int main ()
{
int a;
char b;
char c [100];
escaso (a);
b = gc ();
int longitud = fread (c, 1, tamaño, stdin);
pc (a + 48 );
tarjeta de circuito impreso);

devuelve 0;
}

aquí el registro se usa porque el tiempo de acceso desde el registro es más rápido que la memoria.
escaso es para ingresar un entero de entrada. puede ingresar el carácter directamente, ya que allí ingresa en forma de cadena, por lo que debemos convertirlo en su forma decimal utilizando el método convencional (multiplique cada dígito por 10 y agregue un nuevo dígito).
fread es mucho más rápido pero toma una cadena de caracteres y da la longitud de la cadena ingresada.
putchar_unlocked obtiene el valor del carácter, por lo que si está ingresando un número entero, agregue 48.

## si está ejecutando en la ventana, elimine desbloqueado y use solo
#define gc getchar
#define pc (x) putchar (x);
de lo contrario, mostrará un error.

gracias !!!!!
codifica bien, duerme bien !!!!

Aquí:

http://www.codechef.com/status/I

Explore el sitio y encontrará muchos que usan E / S rápidas para diferentes idiomas. Feliz codificación

Puede usar scanf / printf. Esos son lo suficientemente rápidos como para manejar E / S grandes en la mayoría de las competencias de programación competitivas. El uso de otras funciones puede resultar en un cambio muy muy pequeño en el tiempo de ejecución de su código.
Al final, lo que importa es la eficiencia de su algoritmo. No puede pasar el juez usando un algoritmo ineficiente y una E / S rápida.

More Interesting

¿Cómo se usa la teoría de juegos en la IA?

Dada una matriz, ¿qué es un algoritmo para identificar la submatriz con la suma máxima?

¿Es cierto que al menos uno de los dos términos en [math] Rad (p) - 1, Rad (p) + 1 [/ math] es un número primo, donde [math] Rad (p) [/ math] es el producto de todos los números primos menores o iguales que [math] p [/ math]?

¿Existe algún modelo de cálculo X más débil que una máquina de Turing (pero aún no trivial) para el cual una máquina de Turing puede predecir el comportamiento de detención?

¿Ser bueno en matemáticas ayuda en la programación?

¿Qué tipo de matemáticas usan los programadores de computadoras?

¿Cuáles son los mejores libros de matemáticas gratuitos para graduados de CS?

¿Por qué es importante la teoría del tipo de homotopía?

¿Cuánto de aprender un lenguaje de programación de computadoras (como C ++) tiene sus raíces en las matemáticas, es decir, ¿necesito tener un cerebro matemáticamente competente para escribir programas?

Cómo detectar un ciclo en un gráfico dirigido

¿Puede una máquina de turing aceptar una entrada sin detenerse?

Dada una matriz que consta de solo 0s y 1s, ¿cómo puedo encontrar la submatriz más grande que contenga solo 1s?

Dadas N monedas, colocadas en una fila, indexadas 1 a N de izquierda a derecha. Inicialmente todas las monedas muestran cabeza. En cada turno, dos enteros, no necesariamente distintos, A y B entre 1 y N (inclusive) se eligen de manera uniforme al azar. Todas las monedas con un índice de A a B (inclusive) se voltean. ¿Cuál es el número esperado de monedas que muestran la cabeza después de que M gira?

¿Puede la ciencia / psicología cognitiva ayudarlo a comprender otras áreas más rápidamente, como las matemáticas, la física y la informática?

¿Por qué los maestros programadores insisten en usar las matemáticas para enseñar a sus estudiantes los conceptos básicos de la programación dado que no se usa tanto a diario?