Originariamente inviato da GliderKite

1) Sviluppare un applicazione che basandosi su un algoritmo di tipo greedy utilizzi l'algoritmo di Huffman per comprimere file utilizzando in parallelo un algoritmo che crittografi l'informazione possibilmente tramite l'aggiunta di rumore per mezzo di funzioni pseudocasuali riproducibili (una sorta di funzione di hash modulare, adattata solo teoricamente, al caso in questione).
Ma che senso ha? Non puoi comprimere un "qualcosa" che è stato criptato (vagamente bene), lo dice Shannon
Prima lo comprimi, poi lo cripti.
Interamente, o a blocchi.

2) Visto che non è STL, implementare un container che raggruppi (nel modo più standard, sicuro, ed efficiente possibile) la possibilità di utilizzo di strutture dati (ADT di prima categoria) quali: BST, 2-3-4 top-down (magari tramite RedBlak) e BTree. Lo sviluppo di un contenitore del genere sarebbe, a mio parere, molto interessante, visto che io in giro di queste cose non ne ho trovate.

significa reinventare la ruota.

---
modesto suggerimento: cercati un qualsiasi cosa che puoi VENDERE.