Top 20

1 0x00h 702 pts
2 boris39 702 pts
3 neoxquick 683 pts
4 maf-ia 664 pts
5 thefinder 645 pts
6 benito255 609 pts
7 mego 592 pts
8 madbat2 582 pts
9 Mart 555 pts
10 Stupefy 534 pts
11 nikokks 514 pts
12 tehron 505 pts
13 Kithyane 503 pts
14 plucth 481 pts
15 egosum 474 pts
16 CoYoTe99 417 pts
17 Undr 416 pts
18 Zeta 416 pts
19 loonies2 412 pts
20 Armavica 411 pts

Classement complet

Shoutbox

12 May - 11:47 am

Working again now.

10 May - 4:05 pm

Hello, sorry for the late answer, in fact yes there is an issue with the mail, we will try to fix it quickly. Thanks for reporting

7 May - 6:07 pm

Hi there is a issue for the challenfe Email (number 21). I don't receive a mail on any of them: gmail, hotmail, yahoo. do i fail or is it the challenge ?

28 Feb - 10:35 am

Yes we fixed it

27 Feb - 10:00 pm

Thank you, just validated contest22. The solution checker seems to have been fixed.

27 Feb - 8:40 am

Yes several solutions are accepted of course. I will check one of your answers

26 Feb - 7:51 pm

No 500 error, but the solutions I'm submitting can be verified to be correct. It can't be that only one configuration is accepted, right? - as there are multiple correct configurations for each problem.

26 Feb - 5:54 pm

contest 22 is not concerned by the issue I found, and seems to be working (I suppose you don't have 500 error on this one ?). Your solutions are indeed rejected, but I did not check them yet

26 Feb - 3:25 pm

The validation for contest 22 also seems to be wrong (it's not accepting solutions that are clearly correct). I submitted bug report yesterday.

26 Feb - 9:59 am

Ok I fixed the issue It is higly possible that other challenges are impacted, so don't hesitate to tell meif you encounter this again. Thank you for reporting

Connexion
Mot de passe oublié

Supportez nousx

Vous aimez µContest ?
Supportez nous en votant (fun et difficulté) pour µContest sur WeChall :)
Si vous ne l'avez pas encore fait, profitez-en pour lier votre compte
Wechall à µContest pour pouvoir voter !

Merci

Liste des épreuves :: Divers :: Data compression I (31)

Résumé

ID : 31
Points : 8
Validations :
Page de l'épreuve
Reporter un bug

Description


Dans cette épreuve, nous allons aborder le vaste domaine de la compression de données (ou codage de sources) avec la mise en oeuvre d'un algorithme des plus simples, l'algorithme RLE (Run-length encoding).

Nous allons l'utiliser pour compresser et décompresser des chaînes de caractères. Son principe est le suivant:

Soit la chaîne à compresser :
donnees = "AAAGGBBBOPPTTTTTZZZZ"

Le principe est de compter le nombre d'occurrences consécutives de chaque caractères et de l'encoder avec la lettre pour représenter l'information. Dans cet exemple, il y a 3 A d'affilée, on code donc AAA par 3A, puis GG par 2G, etc.
D'où la chaîne une fois compressée :
donnees_compressees = "3A2G3B1O2P5T4Z"

On obtient donc la même information représentée par moins de caractères. On remarque d'ailleurs qu'il y a des cas pour lesquels la chaîne compressée est plus longue que la chaîne initiale (ABCD -> 1A1B1C1D) !! En fait, on peut montrer que pour tout algorithme de compression, il existe toujours au moins un cas pour lequel la donnée compressée est au moins aussi longue que la donnée non compressée.

L'épreuve se compose de deux étapes, une pour la compression, et une pour la décompression.
Vous devez récupérer la chaîne à compresser dans donnees_a_compresser et celle à décompresser dans donnees_a_decompresser.
Vous devez renvoyer le résultat de la compression dans resulat_compression et celui de la décompression dans resultat_decompression.

En résumé, si vous récupérez :
donnees_a_compresser = "AAAAZZPPPPPPPP"
donnees_a_decompresser = "3H7J1P3D"


vous devez renvoyer :
resultat_compression = "4A2Z8P"
resultat_decompression = "HHHJJJJJJJPDDD"


Variables


Nom Type Description
Variables à récupérer
donnees_a_compresserChaîne de caractèreschar*Chaîne de caractères que vous devez compresser avec l'algorithme RLE. Vous devez renvoyer le résultat dans la variable resultat_compression
donnees_a_decompresserChaîne de caractèreschar*Chaîne de caractères que vous devez décompresser. Elle est le résultat d'une compression par l'algorithme RLE. Vous devez renvoyer le résultat dans la variable resultat_decompression
Variables à renvoyer
resultat_compressionChaîne de caractèreschar*Résultat de la compression RLE de la variable donnees_a_compresser
resultat_decompressionChaîne de caractèreschar*Résultat de la décompression RLE de la variable donnees_a_decompresser