Archivo del autor

Iterando en el dominio de una función

Bien, volvemos a la programación, bueno casi. Tenemos este problema, nos dan la siguiente función: Si nos dan el valor de y nos piden , lo podemos resolver algebraicamente, pero también se puede obtener la solución aplicando búsqueda binaria. La librería STL de C++ ofrece ciertas funciones para usar estos métodos pero estos actúan solamente [...]

¿Cómo iterar en sentido contrario?

Respuesta: reverse_iterator

Potencias y series de potencias a un gran entero

Como habré hecho notar en la solución para el problema anterior, la solución conlleva elevar una matriz a la y tomando en cuenta que para multiplicar un par de matrices se requeriría multiplicaciones escalares esto daría un total de operaciones, lo cual podemos disminuir a . Veamos cómo se hace.

Solución a ¿Cuántas formas?

Primero, no importan que caracteres son, con o da la misma solución para cualquier . Segundo, veamos que podemos hacer si representamos la idea por grafos. Usemos el ejemplo dado, con , existen arcos desde para , y ; desde para y ; y desde hasta solamente, tal como se muestra en la figura siguiente.

¿Cuántas formas?

Regreso con el arameo, escribí un problema hace unos días, una parte es: Tomo un subconjunto del alfabeto y lo ordeno de manera aleatoria. Ahora bien, ¿cuántas cadenas de texto de longitud L puedo crear de tal modo que se usen solo caracteres del subconjunto y en el mismo orden? Se pueden usar las mismas [...]

It’s time to choose

Digamos esto, dado un valor quieres hacer algo. Ejemplo,

Usar una imagen como portada de carpeta en Windows

Un tema corto, en Windows existen varias formas de tener una imagen como la portada de una carpeta, entre ellos están el crear un icono y añadirlo a desktop.ini, usar una opción (algo limitante) en versiones viejas del explorador. Existe una tercera el cual es tener un archivo Folder.jpg y AlbumArtSmall.jpg las cuales son usadas [...]

Especialización de Plantillas

En este tema, trataré la especialización de plantillas de manera general. Antes que todo, recordemos que una plantilla permite aplicar procedimientos comunes con distintos tipos de datos sin tener que reescribir el código. Podemos tener como ejemplo la clase de STL, std::vector<T>. Con la especialización de plantillas, en cambio, se permitir definir procedimientos o estructuras [...]

Portapapeles en Windows

Unos 135 días desde mi último post, pero quien los cuenta. Bien, en vez de explicar el cómo utilizar el portapapeles mediante Win32 (relativamente no tan largo, pero no vale la pena), presentaré la clase newcastle::clipboard, la cual nos permitirá manejar en un programa de C++ operaciones básicas del portapapeles de Windows en tiempo de [...]

Mapa de mensajes: Parte 1

Bien, un largo tiempo desde mi último tema. Trataré de actualizar los temas anteriores. Ahora, para redimirme un poco hablaré una implementación en C++ de lo que Microsoft denominó mapa de mensajes (tabla de métodos virtuales dinámica). La empresa lo hizo pensando principalmente en el manejo de ventanas, pero se puede aplicar (como la misma [...]