java - 在电影院 java 中查找连续可用的免费座位
问题描述
所以我得到了一个 n x m 大小的二维数组和连续数量的空闲座位,我必须在其中找到并输出我找到它的第一行。二维数组中的元素由 1 和 0 组成,1 表示占用,0 表示空闲。我设法解决了 95% id 说......我的问题是我的代码不断输出最后一行,它找到了连续的免费座位,而不是第一个......
这是我的代码:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt(); // nr. of rows
int m = scanner.nextInt(); // nr. of seats / row
int[][] cinema = new int [n][m];
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cinema[i][j] = scanner.nextInt();
}
}
int k = scanner.nextInt(); // nr. of consecutive available seats
Boolean consec = false;
int fff = 0; // final free consecutive seats found
for (int i = 0; i < n; i++) {
int cfs = 0; // current free seat / row
for (int j = 0; j < m; j++) {
if (cinema[i][j] == 0) {
cfs++;
} else if (cinema[i][j] == 1) {
cfs = 0;
}
if (cfs == k) {
consec = true;
fff = i + 1;
} else if (fff == 0) {
consec = false;
}
}
}
if (consec) {
System.out.println(fff);
} else System.out.println(0);
}
}
我究竟做错了什么?
解决方案
推荐阅读
- android - android项目编译但不能正确运行
- wordpress - 如何对前端用户隐藏“添加媒体”?
- javascript - CoffeeScript 在页面加载时执行函数
- colors - 如何在 Godot 中更改精灵的饱和度和叠加
- java - JTree 作为 JComboBox 元素不会显示 JTree
- r - 使用 ddply 函数计算均值、标准误差和标准差的误差
- python - 为什么我无法在 Windows Python 3.8.1 上安装 Levenshtein 包?
- azure - Powershell Set-AzDataLakeStoreItemAclEntry 发送请求时发生错误
- qt - 如何使用动态更新属性更新 ListElement (QML) 值字段
- c# - C# 中的 VB6 文本流