题解 | #DNA序列#

DNA序列

https://www.nowcoder.com/practice/e8480ed7501640709354db1cc4ffd42a

#include <stdio.h>
#include <string.h>


int main(){

    char str[1002];
    scanf("%s", str);

    int n;
    scanf("%d", &n);

    int len = strlen(str);
    char tmp[n], tmp_max[n];
    float max = 0;

    for(int i = 0; i < len - n + 1; i++){
        sprintf(tmp, "%.*s", n, str + i);
        int count = 0;
        for(int j = 0; j < n; j++){
            if(tmp[j] == 'C' || tmp[j] == 'G'){
                count++;
            }
        }
        if(max < (float)count / n){
            max = (float)count / n;
            sprintf(tmp_max, "%s", tmp);
        }

    }

    printf("%s", tmp_max);
    return 0;
}

全部评论
sprintf(tmp, "%.*s", n, str + i); //从str + i 开始复制 n 个字符到 tmp
点赞 回复 分享
发布于 2023-03-13 14:55 陕西

相关推荐

10-11 15:42
皖西学院 Java
青鱼LINK:我硕士,也是java0面试,吾道不孤
点赞 评论 收藏
分享
无敌虾孝子:喜欢爸爸还是喜欢妈妈
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务