美团2024届秋招笔试第二场编程真题

要么是以0开头 要么以1开头 选择最小的答案累加

java 复制代码
import java.util.Scanner;
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) {
             // 注意 while 处理多个 case
            //  in.nextLine();
            String s = in.nextLine();
            //一种是以1开头的子串 一种是以0开头的子串 求最小值求和
            // System.out.println(s);
            long res=0;
            for(int i=0;i<s.length()-1;i++){
                long res0=0;
                long res1=0;
                for(int j=i;j<s.length();j++){
                    //偶数位 0开头为1 1开头为0
                    if((j+1-i)%2==0){
                        if(s.charAt(j)=='1'){
                           res1++;
                        }else if(s.charAt(j)=='0'){
                            res0++;
                        }
                    }else if((j+1-i)%2==1){
                        if(s.charAt(j)=='1'){
                            res0++;
                        }else if(s.charAt(j)=='0'){
                            res1++;
                        }
                    }
                    // System.out.println(res0);
                    //  System.out.println(res1);
                    res+=Math.min(res0,res1);
                }
            }
            System.out.println(res);
        }
    }
}
相关推荐
Sunshine for you1 分钟前
高性能压缩库实现
开发语言·c++·算法
Chase_______2 分钟前
【2026最新保姆级】Python 安装与PyCharm安装配置指南 (Window版)
开发语言·python·pycharm
Sunshine for you2 分钟前
C++中的表达式模板
开发语言·c++·算法
qwehjk20083 分钟前
C++中的状态模式
开发语言·c++·算法
csbysj20204 分钟前
XSLT `<sort>` 元素详解
开发语言
杰克尼5 分钟前
知识点总结--day07(Spring-MVC框架)
java·spring·mvc
沐知全栈开发5 分钟前
Bootstrap 按钮
开发语言
第一程序员6 分钟前
GitHub Copilot:Python开发者的AI助手
开发语言·python·github
xyq20246 分钟前
SQL LEN() 函数详解
开发语言
Fortune797 分钟前
自定义类型转换机制
开发语言·c++·算法