题解 | #DNA序列#

DNA序列

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

#include <iostream>
#include <vector>
#include <cmath>
using namespace std;

int main() {
    string s;
    float n,len,max_r = -1;
    cin >> s;
    cin >> n;
    len = s.size();
    int num = len-n+1;
    vector<float> lens(num,0);

    for(int i=0; i<num; i++){
        float tmp = 0;
        for(int j=i; j<i+n; j++){
            if(s[j] == 'C' || s[j] == 'G'){
                tmp++;
            }
        }
        float res = tmp/n;
        max_r = max(res,max_r);
        lens[i] = res;
        // cout << "res" << res << endl;
        // cout << "max_r" << max_r << endl;
    }

    for(int i=0; i<num; i++){
        // cout << lens[i] << endl;
        if(lens[i] == max_r){
            cout << s.substr(i,n) << endl;
            return 0;
        }
    }

    return 0;
}
// 64 位输出请用 printf("%lld")

本题思路比较简单,但是需要注意设计到小数的部分一定要用浮点数而不是整数。

全部评论

相关推荐

哈哈哈哈哈哈哈哈哈哈这个世界太美好了
凉风落木楚山秋:毕业出路老师不管,你盖个章他好交差就完事了,等你盖完毕业了就不关他事情了
点赞 评论 收藏
分享
Twilight_m...:经典我朋友XXXX起手,这是那种经典的不知道目前行情搁那儿胡编乱造瞎指导的中年人,不用理这种**
点赞 评论 收藏
分享
湫湫湫不会java:先投着吧,大概率找不到实习,没实习的时候再加个项目,然后把个人评价和荣誉奖项删了,赶紧成为八股战神吧,没实习没学历,秋招机会估计不多,把握机会。或者说秋招时间去冲实习,春招冲offer,但是压力会比较大
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务