Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: LeetCode (17) :: Comparando Implementações do Desafio "Letter Combinations of a Phone Number" em Harbour e TOTVS TLPP

_Créditos das imagens: ChatGPT_ # LeetCode (17) :: Comparando Implementações do Desafio "Letter Combinations of a Phone Number" em Harbour e TOTVS TLPP O desafio [**"Letter Combinations of a Phone Number"**](https://leetcode.com/problems/letter-combinations-of-a-phone-number/description/) (Combinações de Letras de um Número de Telefone) é um problema clássico de programação que envolve a geração de todas as combinações possíveis de letras que um número de telefone pode representar, com base no mapeamento tradicional dos teclados de telefone. Abaixo, comparamos duas implementações desse desafio: uma em **Harbour** e outra em **TOTVS TLPP** (TOTVS Language Plus Plus). ## O Desafio Dada uma string contendo dígitos de 2 a 9, retorne todas as combinações possíveis de letras que esses dígitos podem representar. O mapeamento dos dígitos para as letras é o mesmo dos teclados de telefone tradicionais: - 2: "abc" - 3: "def" - 4: "ghi" - 5: ...

BlackTDN :: Descompactando arquivos includes .ch e .th



 O pessoal da Imsys já tinha criado uma versão para descompactar arquivos include. Mas, por algum motivo a versão deles não estã funcionando. Sendo assim. Disponibilizo, aqui, duas novas versões.

*decompress.py

import zlib
import sys

with open(sys.argv[1], 'rb') as f:
    content = f.read()

decompress = zlib.decompressobj(-zlib.MAX_WBITS)
inflated = decompress.decompress(content[14:])
inflated += decompress.flush()

print(inflated[:-1].decode('utf-8', errors='ignore'))

Exemplo (python):

./decompress.py .\includes\sigawin.ch > sigawin.ch

*decompress.ps1

param (
    [string]$filePath
)

Add-Type -AssemblyName System.IO.Compression

$bytes = [System.IO.File]::ReadAllBytes($filePath)
$compressedContent = $bytes[14..($bytes.Length - 1)]
$stream = New-Object System.IO.MemoryStream
$stream.Write($compressedContent, 0, $compressedContent.Length)
$stream.Position = 0

$decompressor = New-Object System.IO.Compression.DeflateStream($stream, [System.IO.Compression.CompressionMode]::Decompress)
$reader = New-Object System.IO.StreamReader($decompressor, [System.Text.Encoding]::UTF8)

$inflated = $reader.ReadToEnd()
$reader.Close()

Write-Output ($inflated.Trim())

Exemplo (pwsh):

pwsh .\decompress.ps1 -filePath ".\includes\sigawin.ch" > .\sigawin.ch

[]s.

Comentários

Postagens mais visitadas