题解 | DNA序列
DNA序列
https://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char DNA[1010] = {0};
int n;
fgets(DNA, sizeof(DNA), stdin);
DNA[strcspn(DNA, "\n")] = '\0';
scanf("%d\n", &n);
float max_gcRatio = 0;
int index = 0;
for (int i = 0; DNA[i + n - 1] != '\0'; i++)
{
float gcRatio = 0;
int count = 0;
for (int j = 0; j < n; j++)
{
if (DNA[i + j] == 'G' || DNA[i + j] == 'C')
{
count++;
}
}
gcRatio = (float)count / n;
if (gcRatio > max_gcRatio)
{
max_gcRatio = gcRatio;
index = i;
}
}
for (int i = 0; i < n; i++)
{
printf("%c", DNA[i + index]);
}
return 0;
}
