import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 读取数组长度
int m = scanner.nextInt();
scanner.nextLine(); // 消耗换行符
// 读取数组元素
int[] matrix = new int[m];
String[] parts = scanner.nextLine().split(" ");
for (int i = 0; i < m; i++) {
matrix[i] = Integer.parseInt(parts[i]);
}
// 读取需要替换的0的数量
int n = scanner.nextInt();
// 计算最多能替换多少个0为1
int maxReplace = 0;
for (int i = 0; i < m; i++) {
// 当前位置是0,且可以替换为1(左右都不是1)
if (matrix[i] == 0) {
boolean leftOk = (i == 0) || (matrix[i - 1] == 0);
boolean rightOk = (i == m - 1) || (matrix[i + 1] == 0);
if (leftOk && rightOk) {
maxReplace++;
// 标记为1,避免影响后续判断
matrix[i] = 1;
}
}
}
// 判断是否能替换n个0
System.out.println(maxReplace >= n);
}
}