Problème Programmation C

Publié le 29 déc. 2016 il y a 3A par Anonyme - Fin › 1 janv. 2017 dans 3A
6

Sujet du devoir

Bonsoir, j'ai besoin d'aide pour ce problème s'il vous plait. Merci d'avance.

On commence par vous décrire une grande chaîne d'ADN, c'est-à-dire une suite de lettres parmi C,G,T,A. Ensuite on vous donne
des motifs d'ADN correspondant à des gènes, c'est-à-dire une suite de quelques dizaines de lettres (toujours parmi C,G,T,A). Le
but est de déterminer pour chaque gène quelle est la zone de la grande chaîne d'ADN qui ressemble le plus au motif de ce gène.
Concrètement, on veut minimiser le nombre de différences entre le code du gène et le code d'un fragment de la grande chaîne
d'ADN (le fragment doit être de même longueur que le code du gène et doit être entièrement inclus dans la chaîne d'ADN).
Pour simplifier, on va travailler en considérant que l'ADN est simplement une suite de 0 et de 1 (remarquez que cela ne change pas
fondamentalement le problème). On supposera aussi que tous les gènes considérés sont des séquences de même longueur. Ce
qu'on vous demande précisément dans ce sujet, c'est de déterminer pour chaque gène quel est le nombre minimum de différences
que l'on peut obtenir entre le code du gène et le code d'un fragment de même longueur entièrement inclus dans la grande chaîne
d'ADN.
Notez que vous ne pouvez pas retourner les gènes ou la chaîne d'ADN.
Limites de temps et de mémoire (Python)
Temps : 0,4 s sur une machine à 1 GHz.
Mémoire : 32 000 ko.

Contraintes
1 <= G <= 100, où G est le nombre de gènes que l'on cherche à reconnaître approximativement dans la grande chaîne.
1 <= L <= 30, où L est la longueur des segments d'ADN des gènes considérés.
L <= N <= 100 000, où N est la longueur de la grande chaîne d'ADN à étudier.
Entrée
La première ligne de l'entrée contient trois entiers séparés par des espaces : G, L et N.
Chacune des G lignes suivantes contient L entiers (0 ou 1) séparés par des espaces décrivant un gène.
La dernière ligne contient N entiers (0 ou 1) séparés par des espaces décrivant la grande chaîne.
Sortie
Vous devez écrire G lignes contenant chacune un entier. La ligne ième ligne doit donner le nombre minimal de différences que l'on peut trouver entre le code du ième gène de l'entrée et un fragment de même longueur dans la grande chaîne d'ADN fournie.

Exemple

Entrée
3 6 12
0 0 1 1 0 1
1 1 1 1 1 1
1 0 0 0 0 1
1 0 1 1 0 0 0 0 1 1 0 0

Sortie


Commentaires
Premier motif : 1 différence au moins
1 0 1 1 0 0 0 0 1 1 0 0
0 0 1 1 0 1
Second motif : 3 différences au moins
1 0 1 1 0 0 0 0 1 1 0 0
1 1 1 1 1 1
Troisième motif : 0 différence est possible
1 0 1 1 0 0 0 0 1 1 0 0
1 0 0 0 0 1

 

 

111

Images concernant mon devoir de Informatique

Où j'en suis dans mon devoir

#include <stdio.h>
#include <stdlib.h>

int main()

 




0 commentaire pour ce devoir



Ils ont besoin d'aide !

Il faut être inscrit pour aider

Crée un compte gratuit pour aider

Je m'inscrisOU

J'ai déjà un compte

Je me connecte