Gérer le forum: Aide • Rechercher • Liste des Membres • Groupes d'utilisateurs
• S'enregistrer
• Profil • Se connecter pour vérifier ses messages privés
• Connexion
Auteur |
Message |
jerem72
Forumeur occasionnel
Sexe:
Messages: 21
Localisation: Le Mans
|
Posté le:
Jeu 03 Jan 2008 - 18:43 |
|
Bonjour à tous
j'ai un un algo qui me semble assez complexe à realiser. J'aurais besoin de votre aide vous autres developpeurs au moins pour demarer car je ne vois pas par où commencer.
Voici l'ennoncé
Presentation
On voudrais decouper des repertoires afin de pouvoir les archiver au mieux sur des cdrom ou dvd.
On dispose d'un enssemble re depertoire contenant des fichiers. Ces reps ne contientent uniquement des fichiers pas de sous repertoirs
Ces fichiers font une taille importante et variable. Il y a un certain nombre de fichiers par repertoire et jamais le meme
On veut archiver ces fichiers dans des dvd . Le problème est de remplir les supports au mieux. Pour cela le mieux serait d'arriver à des groupes de repertoir tel que la somme des taimmes des fichiers qu'ils contiennent soit voisine de la taille du suport sans la depasser.
Malheureusement les repoertoires ne sont pas tous de la meme taille et certains sont assez petirs. D'autres depasse ce qu'on peut mettre sur un support. D'autre part on souhaite concerver la structure en repertoire sur les supports. Si tel fichier se trouve dans tel repertoir on doit l'y retrouver sur le support. Il est interdit de couper un fichier en deux
L'idée la plus simple sinon il faut faire apel a l'algo dis 'sac à dos' qui est relativement complexe.
L'idée la plus simple donc est de prendre les repertoires dans l'ordre, de prendre les fichiers qu'ils contienennt dans l'oredre, d'adittioner leur taille et quand la taille risque de depasser la limitte du suport, deplacer les fichiers qui tiennent encore dans une copie du repertoire. Ainsi quand on traite D1, s'il y'a trop de fichiers dedans on créer D1-p1 en deplacant dans Di-p1 tous les fichiers qui tienne sur un seul support. On recomence avec le reste de D1 on le coupe en deux si il est trop grand
Par exemple soit les supports pouvant contenir 10 unités et voici 3 repertoires contenant des fichiers. La taille des fichiers est indiqué en nombre d'unités.
D1 {f1:21f2:4,f3:3,f4:3}
D2 {f1:1}
D3 {f1:3,f2:1,f3:6,f4:4,f5:3}
Donc cala fait 4 supports a graver
support 1 : D1-p1 {f1,f2,f3}
support 2 : d1-p2 {f4} D2 {f1} D3-p1 {f1,f2}
support 3 : d3-p2 {f3,f4}
support 4 : d3-p3 {f5}
Le but de se TP est d'eecrire un script qui realise le decoupage |
_________________ L'informaticient fou de basket |
|
|
|
N'oubliez pas de vous inscrire à la communauté pour participer. Si vous êtes déjà membre, connectez-vous pour faire disparaître ce bandeau publicitaire. |
|
|
Voir le sujet suivant
Voir le sujet précédent
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
|