Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jc-dev-ec/string-replacement-problem
https://github.com/jc-dev-ec/string-replacement-problem
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/jc-dev-ec/string-replacement-problem
- Owner: JC-DEV-EC
- License: other
- Created: 2024-03-14T03:07:57.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-08-15T18:41:36.000Z (4 months ago)
- Last Synced: 2024-09-13T18:12:32.729Z (3 months ago)
- Language: C++
- Size: 10.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# String Replacement Problem
![Licencia MIT](https://img.shields.io/badge/licencia-MIT-blue.svg)
![Estado del Proyecto](https://img.shields.io/badge/estado-finalizado-green.svg)
![Versión](https://img.shields.io/badge/versión-1.0.0-brightgreen.svg)Este proyecto implementa un algoritmo para reemplazar caracteres en una cadena de texto según las posiciones indicadas por un arreglo. Es útil en casos donde se necesita modificar una cadena siguiendo un patrón específico definido por un conjunto de posiciones.
## 📋 Descripción
El **String Replacement Problem** consiste en reemplazar los caracteres de una cadena en las posiciones especificadas por un arreglo, utilizando los primeros caracteres del alfabeto inglés en minúscula. Este programa está diseñado para manejar entradas específicas y generar un resultado acorde a las reglas definidas.
## 🛠️ Tecnologías Utilizadas
- **C**: Lenguaje de programación utilizado para implementar la lógica del sistema.
- **Archivos**: Se utilizan para leer las entradas y escribir los resultados.
- **Validación de entradas**: Para asegurar que los datos proporcionados sean correctos y cumplan con las restricciones.## 🏗️ Instalación
Para ejecutar este proyecto en tu máquina local, sigue estos pasos:
1. **Clona el repositorio**:
```bash
git clone https://github.com/LatinGladiador/String-Replacement-Problem.git
```2. **Navega al directorio del proyecto**:
```bash
cd String-Replacement-Problem
```3. **Compila el archivo C**:
```bash
gcc main.c -o string_replacement
```4. **Ejecuta el programa**:
```bash
./string_replacement
```## 🖥️ Uso
1. **Crea un archivo** llamado `input.txt` con el formato especificado en la sección de Ejemplos.
2. **Ejecuta el programa** que leerá la entrada desde `input.txt` y generará un archivo `output.txt` con el resultado.## 📄 Formato de Entrada y Salida
### Entrada
- El archivo `input.txt` debe seguir el siguiente formato:
1. La primera línea debe contener un entero **N** (2 ≤ **N** ≤ 50) que representa la longitud de la cadena.
2. La segunda línea debe contener una cadena **S** de longitud **N**.
3. La tercera línea debe contener un entero **M** (1 ≤ **M** ≤ min(N - 1, 26)) que representa la cantidad de posiciones a modificar.
4. La cuarta línea debe contener **M** enteros que representan las posiciones en la cadena a modificar.### Salida
- El archivo `output.txt` contendrá:
1. Una cadena resultante después de aplicar las modificaciones según las reglas o "Invalid inputs" si alguna entrada no cumple las restricciones.### Ejemplos
**input.txt**:
```
8
thisismy
3
1 5 7
```**output.txt**:
```
taisiemg
```**input.txt**:
```
8
thisismy
3
1 5 8
```**output.txt**:
```
Invalid inputs
```**input.txt**:
```
-1
thisismy
3
1 5 8
```**output.txt**:
```
Invalid inputs
```## 🤝 Contribuciones
Las contribuciones son bienvenidas. Si deseas contribuir, sigue estos pasos:
1. **Haz un fork del repositorio**.
2. **Crea una nueva rama** para tus cambios:
```bash
git checkout -b feature/nueva-caracteristica
```3. **Realiza tus cambios y haz commit**:
```bash
git commit -m "Añadida nueva característica"
```4. **Empuja tu rama**:
```bash
git push origin feature/nueva-caracteristica
```5. **Abre un Pull Request** en GitHub.
## 👤 Autor
Este proyecto fue creado y es mantenido por [LatinGladiador](https://github.com/LatinGladiador).
## 📜 Licencia
Este proyecto está licenciado bajo la [Licencia MIT](LICENSE).
---
[![MIT License](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
---