题解 | #DNA序列#

DNA序列

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

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        String a = in.nextLine();
        int b = in.nextInt();
        int gc = 0;
        String tmp = a.substring(0, b);

        for (int i = 0; i < b; i++) {
            if (tmp.charAt(i) == 'C' || tmp.charAt(i) == 'G') {
                gc++;
            }
        }
        int max = gc;
        int maxidx = 0;
        for (int i = b; i < a.length(); i++) {
            if (a.charAt(i) == 'C' || a.charAt(i) == 'G') {
                if (a.charAt(i - b) != 'C' && a.charAt(i - b) != 'G') {
                    gc++;
                }
               
            }else if (a.charAt(i) != 'C' && a.charAt(i) != 'G') {
                if (a.charAt(i - b) == 'C' || a.charAt(i - b) == 'G') {
                    gc--;
                }
            }
            if (gc > max) {
                max = gc;
                maxidx = i - b + 1;
   
            }
        }
        System.out.println(a.substring(maxidx, maxidx + b));

    }
}

全部评论

相关推荐

11-26 22:34
已编辑
重庆邮电大学 Java
快手 客户端开发 (n+5)k*16 公积金12
牛客895077908号:佬 什么双非硕啊
点赞 评论 收藏
分享
11-03 14:38
重庆大学 Java
AAA求offer教程:我手都抬起来了又揣裤兜了
点赞 评论 收藏
分享
我已成为0offer的糕手:别惯着,胆子都是练出来的,这里认怂了,那以后被裁应届被拖工资还敢抗争?
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务