leetcode:2784. 检查数组是否是好的(python3解法)

难度:简单

给你一个整数数组 nums ,如果它是数组 base[n] 的一个排列,我们称它是个  数组。

base[n] = [1, 2, ..., n - 1, n, n] (换句话说,它是一个长度为 n + 1 且包含 1 到 n - 1 恰好各一次,包含 n  两次的一个数组)。比方说,base[1] = [1, 1] ,base[3] = [1, 2, 3, 3] 。

如果数组是一个好数组,请你返回 true ,否则返回 false 。

注意:数组的排列是这些数字按任意顺序排布后重新得到的数组。

示例 1:

输入:nums = [2, 1, 3]
输出:false
解释:因为数组的最大元素是 3 ,唯一可以构成这个数组的 base[n] 对应的 n = 3 。但是 base[3] 有 4 个元素,但数组 nums 只有 3 个元素,所以无法得到 base[3] = [1, 2, 3, 3] 的排列,所以答案为 false 。

示例 2:

输入:nums = [1, 3, 3, 2]
输出:true
解释:因为数组的最大元素是 3 ,唯一可以构成这个数组的 base[n] 对应的 n = 3 ,可以看出数组是 base[3] = [1, 2, 3, 3] 的一个排列(交换 nums 中第二个和第四个元素)。所以答案为 true 。

示例 3:

输入:nums = [1, 1]
输出:true
解释:因为数组的最大元素是 1 ,唯一可以构成这个数组的 base[n] 对应的 n = 1,可以看出数组是 base[1] = [1, 1] 的一个排列。所以答案为 true 。

示例 4:

输入:nums = [3, 4, 4, 1, 2, 1]
输出:false
解释:因为数组的最大元素是 4 ,唯一可以构成这个数组的 base[n] 对应的 n = 4 。但是 base[n] 有 5 个元素而 nums 有 6 个元素。所以答案为 false 。

提示:

  • 1 <= nums.length <= 100
  • 1 <= num[i] <= 200

题解:

class Solution(object):
    def isGood(self, nums):
        sort_nums = sorted(nums)
        res = []
        for i in range(1,len(nums)):
            res.append(i)
        res.append(len(nums)-1)
        # res.append(len(nums)-1)
        # print(res,sort_nums)
        if res == sort_nums:
            return True
        return False

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/294773.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

理解二叉树的遍历(算法村第七关白银挑战)

二叉树的前序遍历 144. 二叉树的前序遍历 - 力扣&#xff08;LeetCode&#xff09; 给你二叉树的根节点 root &#xff0c;返回它节点值的 前序 遍历。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,2,3]解 LeetCode以及面试中提供的方法可能…

关于“Python”的核心知识点整理大全60

目录 19.4 小结 第 20 章 设置应用程序的样式并对其 进行部署 20.1 设置项目“学习笔记”的样式 20.1.1 应用程序 django-bootstrap3 settings.py settings.py 20.1.2 使用 Bootstrap 来设置项目“学习笔记”的样式 20.1.3 修改 base.html 1. 定义HTML头部 base.html…

如何通过内网穿透实现无公网IP远程访问内网的Linux宝塔面板

文章目录 一、使用官网一键安装命令安装宝塔二、简单配置宝塔&#xff0c;内网穿透三、使用固定公网地址访问宝塔 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。…

免费文件格式转换器——Fconvertio!

项目链接&#xff1a;https://fostmar.online/fconvertio.html 特点&#xff1a; 完全免费支持文件格式多界面极为简单 支持格式转换&#xff1a; gifjpegjpgpngpdfdocdocxodtrtfxlsxlsxcsvodspptpptxodptxtziprarmp3wavmp4avihtmlsql

影响助听器使用寿命的因素

至少有九个因素会影响助听器的平均寿命&#xff1a; 用于制造助听器的材料清洁频率佩戴助听器的地方助听器的存放方式助听器样式一个人的身体生理学维护频率技术进步独特的听力需求 1.用于制作助听器的材料 虽然助听器的设计经久耐用&#xff0c;但由塑料、金属、硅、聚合物…

《学周刊》是什么级别的期刊?是正规期刊吗?能评职称吗?

《家长》以马列主义、思想、邓小平理论和“三个代表”重要思想为指导&#xff0c;全面贯彻党的教育方针和“双百方针”&#xff0c;理论联系实际&#xff0c;开展教育科学研究和学科基础理论研究&#xff0c;交流科技成果&#xff0c;促进学院教学、科研工作的发展&#xff0c;…

安卓平板电脑,5G通讯加持,帮你的通讯效率提提速

安卓平板电脑&#xff0c;作为一种集通讯、娱乐、工作于一体的便携设备&#xff0c;近年来随着5G通讯技术的发展&#xff0c;其在通讯效率方面迎来了新的提升。5G通讯加持&#xff0c;不仅为安卓平板电脑带来了更快速、更稳定的数据传输能力&#xff0c;也为用户的通讯效率提供…

云卷云舒:【实战篇】Redis迁移

1. 简介 Remote Dictionary Server(Redis)是一个由Salvatore Sanfilippo写的key-value存储系统&#xff0c;是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库&#xff0c;并提供多种语言的API。 2. 迁移原理 redis-sh…

GPU测试-GPUburn

很早就使用过GPU burn做个类似稳定性 压力性得对GPU进行相应得测试 这里再回顾一下 开源链接如下 https://github.com/wilicc/gpu-burn 简单得步骤主要是 先安装gpu得driver cuda 并进行验证如下 我理解其实按照gpu的 driver就可以了 如果是使用docker的情况下 安装github下…

使用printJS使网页打印成PDF、网页html结合printJS导出为pdf

先放几个参考链接 感谢&#xff01; Vue使用PrintJS实现页面打印功能_vue print.js 设置打印pdf的大小-CSDN博客 前台导出pdf经验汇总 &#xff08;html2canvas.js和浏览器自带的打印功能-print.js&#xff09;以及后台一些导出pdf的方法_iqc后台管理系统怎么做到导出pdf-CSD…

钉钉审批流程解读

组织机构 部门 部门可以创建下级部门部门可以设置部门主管&#xff0c;可以是多人部门可以默认构建&#xff0c;沟通群可以设置部门信息&#xff0c;比如电话、简介可以设置部门的可见性&#xff0c;比如隐藏本部门&#xff0c;本部门将不会在组织机构、搜索&#xff0c;个人…

Git如何将多个commit合并一个commit

问题场景&#xff1a;我在fork的仓库提交多个commit后&#xff0c;准备向原仓库提交pr&#xff0c;但是原仓库要求一个pr一个commit&#xff0c;因此需要先将这些commit合并为一个。 1.先拿到要合并的commit中最早的一个的commit id&#xff0c;然后进入仓库&#xff0c;使用如…

Android linphone-android sdk设置语音编码问题

1.遇到的问题 今天遇到linphone-android sdk需要解决语音编码问题&#xff0c;需要指定编码。查了下配置&#xff0c;里面没有发现类似的配置。 ## Start of factory rc # This file shall not contain path referencing package name, in order to be portable when app is r…

微机原理笔记(4)

一、数据传送指令 1、数据传送指令MOV 语句格式&#xff1a;MOV OPD&#xff0c;OPS功能&#xff1a;将源操作数传入目的地址&#xff0c;源地址内容不变。即&#xff08;OPS&#xff09;-->OPD 注意&#xff1a; MOV指令不改变源操作数内容&#xff0c;不影响标志位。源…

敏捷研发管理流程及示例

Leangoo领歌是一款永久免费的专业的敏捷开发管理工具&#xff0c;提供端到端敏捷研发管理解决方案&#xff0c;涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。 Leangoo领歌上手快、实施成本低&#xff0c;可帮助企业快速落地敏捷&#xff0c;提质增效、缩短周期、加速创新…

深度学习在工地安全帽识别技术的应用与展望

当我们谈论“工地安全帽识别”时&#xff0c;实际上我们在探讨的是如何利用深度学习图像识别技术来提高建筑工地的安全性。这一技术的应用可以显著提高工地安全管理的效率和有效性&#xff0c;是现代建筑工程管理中不可或缺的一部分。以测评的北京富维图像的工地安全帽识别为例…

代码随想录day20 开始二叉搜索树

654.最大二叉树 题目 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下&#xff1a; 二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树是通过数组中最大值右边部分构造出的最大二叉树。 通过给定的数组构…

js逆向第9例:猿人学第2题-js混淆-动态cookie1

题目2:提取全部5页发布日热度的值,计算所有值的加和,并提交答案 (感谢蔡老板为本题提供混淆方案) 既然题目已经给出了cookie问题,那就从cookie入手,控制台找到数据请求地址 可以看到如下加密字符串m类似md5,后面跟着时间戳 m=45cc41dcdb15159ebb50564635f8e362|1704301…

MySQL数据管理(一)

一、列类型 列类型指规定数据库中该列存放的数据类型 列类型分类 数值类型字符串类型日期和时间型数值类型 数值类型 字符串类型 日期和时间类型 MySQL允许“不严格”语法&#xff0c;任何标点符号都可以作为日期部分之间的间隔符&#xff0c;如“24-01-03”、“24.01.03”…

This error originates from a subprocess, and is likely not a problem with pip

我遇这个问题是的原因是包名错误 注意检查包名
最新文章