算法Day25 01子串

01子串

Description

给你一个二进制字符串s,该字符串不含前导零。
如果s包含零个或一个由连续的’1’组成的字段,返回true​​​。否则,返回false

Input

输入一个只含01的字符串s
1≤s.length≤100

Output

输出true或false

Sample

算法Day25 01子串_第1张图片

代码

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String  s = scanner.nextLine();

        System.out.println(process(s));
    }
    public static boolean process(String  s){
        boolean flag = true;
        for(int i = 0;i<s.length();i++){
            if(s.charAt(i)=='1'&&!flag){
                return false;
            }
            if(s.charAt(i)=='1'&&flag){
                while (i<s.length()&&s.charAt(i)=='1'){
                    i++;
                }
                flag = false;
                i--;//与for循环i++抵消
            }
        }
        return true;
    }
}


思路

仍然是使用flag维护变量状态是否改变

你可能感兴趣的:(算法,算法)