ZZULIOJ 1157: 连续的n个1,Java
题目描述
计算机数据都是由0和1组成的,看着长长的0101001110101111011,要找出连续n个1的子串有多少个,确实麻烦,请你编程实现吧。
输入
输入第一行为一个字符串,由0和1组成,长度小于1000;输入第二行为一个正整数n。
输出
输出一个整数,表示连续n个的1的子串的个数。
样例输入 Copy
0101001110101111011
2
样例输出 Copy
6
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String s = bf.readLine();
int n = Integer.parseInt(bf.readLine());
int sum = 0;
for (int i = 0; i < s.length() - n + 1; i++) {
int ok = 1;
for (int j = i; j < i + n; j++) {
if (s.charAt(j) == '0') {
ok = 0;
break;
}
}
sum += ok;
}
bw.write(sum + "\n");
bw.close();
}
}