1881. 飞机座位

2023-11-22 13:59
文章标签 1881 飞机 座位

本文主要是介绍1881. 飞机座位,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1881. 飞机座位

 
您的任务是为四口之家尽可能多的分配座位。一个四口之家必须占领一排当中连续的四个座位。过道上的座位(例如2C和2D)不被认为是彼此相邻的。一家人被过道分开是可以的,但在这种情况下必须每一边坐两个。显然,座位不可以分配给一个以上的家庭。
编写一个函数
class Solution {public int solution(int N,String S};
函数中N表示有N排座位,S表示已经提供出去的座位,函数返回剩下的座位能坐四口之家的最大值。例如, N = 2,S = '1A 2F 1C’,你的函数应该返回2.下图给出了做法。
当N = 1, S = ""(空字符串),你的函数应该返回2,因为我们最多可以提供2个四口之家的座位在一排空座位中,例如下图。

样例

输入: N = 2,S = "1A 2F 1C"
输出: 2
输入: N = 1,S = ""
输出: 2

注意事项

  • N是在[1,50]内的整数;
  • 字符串S由有效的座位名称组成,并用单个空格分隔;
  • 每个座位号最多在字符串S中出现一次。
public class Solution {
    /**
     * @param N:  the number of rows
     * @param S: a list of reserved seats
     * @return: nothing
     */
    public int solution(int N, String S) {
        int sum = 0;
            String[] s = new String[]{"B", "C", "D", "E", "F", "G", "H", "I"};
            String[] strings = S.split(" ");
            HashSet<String> hashSet = new HashSet<>(Arrays.asList(strings));
            for (int i = 1; i <= N; i++) {
                int flag = 0;
                for (int j = 0; j < s.length; j++) {
                    if (!hashSet.contains(i + s[j])) {
                        flag++;
                        if (flag > 3) {
                            if (j == 3 || j == 5 || j == 7) {
                                // System.out.println(i + s[j]);
                                sum++;
                                flag = 0;
                            }
                        }
                    } else {
                        flag = 0;
                    }
                }
            }
            return sum;
    }
}

这篇关于1881. 飞机座位的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/410638

相关文章

Web开发基础:JavaScript飞机大战

超详细的Java知识点路线图 飞机大战 图片链接:https://pan.baidu.com/s/1elfvlHClwwDnc8buUnySPw 提取码:mi5y 功能点: 1、飞机跟着鼠标移动 在onmousemove事件中获得鼠标的坐标,设置给飞机图片 2、发射子弹 子弹需要动态添加到网页中 动态创建标签对象 document.createElement(“标签名”); 动态添加

太阳系模型_飞机游戏JAVA084-097

来源:http://www.bjsxt.com/ 1、S01E084-087太阳系模型实操 package com.test.util;/*** 游戏中关于窗口大小的常量*/public class Constant {public static final int GAME_WIDTH = 500;public static final int GAME_HEIGHT = 500;}/

SQL进阶技巧:经典问题题-换座位

目录 0 问题描述 1 数据准备 2 问题分析 3 小结 0 问题描述 表 seat中有2个字段id和student id 是该表的主键(唯一值)列,student表示学生姓名。 该表的每一行都表示学生的姓名和 ID。 id 是一个连续的增量。 编写解决方案来交换每两个连续的学生的座位号。如果学生的数量是奇数,则最后一个学生的id不交换。 按 id 升序 返回结果表。 查询结

springboot+vue+mybatis计算机毕业设计飞机订票系统+PPT+论文+讲解+售后

快速发展的社会中,人们的生活水平都在提高,生活节奏也在逐渐加快。为了节省时间和提高工作效率,越来越多的人选择利用互联网进行线上打理各种事务,然后线上管理系统也就相继涌现。与此同时,人们开始接受方便的生活方式。他们不仅希望页面简单大方,还希望操作方便,可以快速锁定他们需要的线上管理方式。基于这种情况,我们需要这样一个界面简单大方、功能齐全的系统来解决用户问题,满足用户需求。 课题主要分为二大模

Web 三维组态的仿真运用案例:民航飞机的数据监控

前言 在飞机航行的过程中,客舱里座位上方的荧屏上,除了播放电视剧和广告之外,还会时不时的切换到一个飞机航行的监控系统。这个监控系统的主要目的是,让乘客可以了解到飞机在航行过程中的整体状况、距离目的地的航线进程以及一些有可能出现的突发事件。飞机航行的监控系统在一定程度上,可以使乘客在旅途过程中得到准确的信息源,最重要的是可以使乘客在旅途中得到安心。在保障乘客获取到实际信息源的同时,飞机航行的监控系

Unity射击游戏开发教程:(33)控制飞机左右移动

在本文中,我将介绍如何在玩家朝该方向移动时添加向左和向右转动的动画。 我们已经将左转和右转动画导入到我们的项目中。在我使用的动画中,它们只有两帧,因为我们希望飞机倾斜得很快,这样玩家在按下相应按钮时就能直接感觉到转弯。 </

【数据集】SAR飞机数据集用于目标检测

SAR-AIRcraft-1.0数据集分享 后附下载链接 原文链接: https://radars.ac.cn/cn/article/doi/10.12000/JR23043 类别:A220, A320/321, A330, ARJ21, Boeing737, Boeing787, other 数据来源:GF-3,单极化 成像地区:上海虹桥机场、北京首都机场、台湾桃园机场 影像尺寸:800×8

华为OD机试-找座位(C++ Java Python)

题目描述:在一个大型体育场内举办了一场大型活动,由于疫情防控的需要,要求每位观众的必须间隔至少一个空位才允许落座。现在给出一排观众座位 分布图,座位中存在已落座的观众,请计算出,在不移动现有观众座位的情况下,最多还能坐下多少名观众。输入描述:一个数组,用来标识某一排座位中,每个座位是否已经坐人。0表示该座位没有坐人,1表示该座位已经坐人。输出描述:整数,在不移动现有观众座位的情况下,最

【生日视频制作】云层直升机飞机机身AE模板修改文字软件生成器教程特效素材【AE模板】

云层直升飞机生日视频制作教程AE模板修改文字特效软件生成器玩法素 怎么如何做的【生日视频制作】云层直升机飞机机身AE模板修改文字软件生成器教程特效素材【AE模板】 生日视频制作步骤: 安装AE软件下载AE模板把AE模板导入AE软件修改图片或文字渲染出视频

NASA数据集:ARCTAS P-3B 飞机辐射原位数据

ARCTAS_Radiation_AircraftInSitu_P3B_Data ARCTAS P-3B 飞机辐射原位数据 简介 ARCTAS_AircraftInSitu_Radiation_P3B_Data 是在 P-3B 飞机上收集的原位辐射数据,是 “北极飞机和卫星对流层成分研究”(ARCTAS)亚轨道活动的一部分。该产品中的数据是通过宽带辐射计(BBR)和太阳光谱通量辐射计(SSF