力扣刷题记录——1108. IP 地址无效化、1281. 整数的各位积和之差 次数 、1295. 统计位数为偶数的数字、1394. 找出数组中的幸运数

news2024/11/17 16:40:04

本专栏主要记录力扣的刷题记录,备战蓝桥杯,供复盘和优化算法使用,也希望给大家带来帮助,博主是算法小白,希望各位大佬不要见笑,今天要分享的是——《力扣刷题记录——1108. IP 地址无效化、1281. 整数的各位积和之差 次数 、1295. 统计位数为偶数的数字、1394. 找出数组中的幸运数》。 

目录

1108. IP 地址无效化

        题目描述

        解题思路

        解题代码

1281. 整数的各位积和之差 

        题目描述

        解题思路

        解题代码

1295. 统计位数为偶数的数字

        题目描述

        解题思路

        解题代码

1394. 找出数组中的幸运数 

        题目描述

        解题思路

        解题代码


1108. IP 地址无效化

题目描述

给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。

所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 "."

示例 1:

输入:address = "1.1.1.1"
输出:"1[.]1[.]1[.]1"

示例 2:

输入:address = "255.100.50.0"
输出:"255[.]100[.]50[.]0"

解题思路

用字符串的replace就可以替换字母了。

解题代码

def defangIPaddr(address: str) -> str:
    return address.replace(".","[.]")

1281. 整数的各位积和之差 

题目描述

给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。

示例 1:

输入:n = 234
输出:15 
解释:
各位数之积 = 2 * 3 * 4 = 24 
各位数之和 = 2 + 3 + 4 = 9 
结果 = 24 - 9 = 15

示例 2:

输入:n = 4421
输出:21
解释: 
各位数之积 = 4 * 4 * 2 * 1 = 32 
各位数之和 = 4 + 4 + 2 + 1 = 11 
结果 = 32 - 11 = 21

解题思路

将整数转化为字符串,通过for循环进行累加和累乘,最终返回结果。

解题代码

def subtractProductAndSum(n: int) -> int:
    ji = 1
    he = 0
    for i in str(n):
        ji *= int(i)
        he += int(i)
    return ji-he

1295. 统计位数为偶数的数字

题目描述

给你一个整数数组 nums,请你返回其中位数为 偶数 的数字的个数。

示例 1:

输入:nums = [12,345,2,6,7896]
输出:2
解释:
12 是 2 位数字(位数为偶数) 
345 是 3 位数字(位数为奇数)  
2 是 1 位数字(位数为奇数) 
6 是 1 位数字 位数为奇数) 
7896 是 4 位数字(位数为偶数)  
因此只有 12 和 7896 是位数为偶数的数字

示例 2:

输入:nums = [555,901,482,1771]
输出:1 
解释: 
只有 1771 是位数为偶数的数字。

解题思路

用for循环遍历列表找出偶数,用长度%2就可以了。

解题代码

def findNumbers(nums: list[int]) -> int:
    count = 0
    for i in nums:
        if len(str(i))%2 == 0:
            count+=1
    return count

1394. 找出数组中的幸运数 

题目描述

在整数数组中,如果一个整数的出现频次和它的数值大小相等,我们就称这个整数为「幸运数」。

给你一个整数数组 arr,请你从中找出并返回一个幸运数。

  • 如果数组中存在多个幸运数,只需返回 最大 的那个。
  • 如果数组中不含幸运数,则返回 -1 

示例 1:

输入:arr = [2,2,3,4]
输出:2
解释:数组中唯一的幸运数是 2 ,因为数值 2 的出现频次也是 2 。

示例 2:

输入:arr = [1,2,2,3,3,3]
输出:3
解释:1、2 以及 3 都是幸运数,只需要返回其中最大的 3 。

示例 3:

输入:arr = [2,2,2,3,3]
输出:-1
解释:数组中不存在幸运数。

示例 4:

输入:arr = [5]
输出:-1

示例 5:

输入:arr = [7,7,7,7,7,7,7]
输出:7

解题思路

用字典将元素和出现的次数构成键值对,如果键和值一样,则添加到列表中,如果列表为空,那么返回-1,如果不为空,返回最大值。

解题代码

def findLucky(arr: list[int]) -> int:
    arr_dic = {}
    result = []
    for i in set(arr):
        arr_dic[i] = arr.count(i)
    for i in arr_dic.items():
        if i[0] == i[1]:
            result.append(i[0])
    if result == []:
        return -1
    else:
        return max(result)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手撕排序算法(一)——插入排序

排序的概念及意义本章内容我们采用C语言完成代码。排序的概念我们先来了解一下基础概念:排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。稳定性:假定在待排序…

cin关闭流同步的利弊与cout的endl使用(超时问题)

重要&#xff1a;1&#xff1a;比如print&#xff0c;scanf&#xff0c;gets()&#xff0c;pus()&#xff0c;getchar()不要与cin&#xff0c;cout共用2&#xff1a;cout中不要使用endl每次使用endl&#xff0c;都要flush缓冲区&#xff0c;造成大量时间耗费。推荐cout <<…

springBoot国际化的一种方式

引言&#xff1a; 当我们的应用面向不同国家用户时&#xff0c;根据不同的locale返回不同的语言信息的国际化功能就显得有必要了。一般来说国际化主要表现在前端用户界面上&#xff0c;在现在前后端分离的背景下&#xff0c;前端页面的国际化交由前端代码独立完成&#xff1b;少…

只用两行代码做个表白二维码,赶快送给你心目中那个她吧♥(๑> ₃ <)♥

上一篇&#xff1a;教你一招完美解决 pptx 库安装失败的问题 今天有同事给我说&#xff1a;女朋友生日快到了&#xff0c;想用Python给她写个表白二维码&#xff0c;然后印在买的衣服上送给她。这么特别的生日礼物&#xff0c;博主还是第一次听到&#xff0c;不得不说&#xff…

Linux-make/Makefile

一、了解make/Makefile对于make/Makefile首先我们需要了解make是一条命令&#xff1b;Makefile是一个文件。make是一个命令&#xff0c;可以执行某条指令。这个我们理解&#xff0c;那Makefile是一个文件&#xff0c;那这个文件是干什么用的呢&#xff1f;这个文件内部一共包含…

SAP中新增销售科目配置分析实例

公司有一批呆滞维修用备件需要卖出&#xff0c;对应在系统内就需要做销售处理。但通常情况下&#xff0c;系统设计时没有考虑和配置备件销信也很正常。所以&#xff0c;处理时可能因为缺少配置做不下去。我需要解决配置问题&#xff0c;并做下可行性的测试。 首先考虑到的是末…

UniRx之ReactiveCommand

前言 UniRx中ReactiveCommand和AsyncReactiveCommand是一种基于IObservable的可控命令机制&#xff0c;用于控制是否允许进程运行 很难用文字说明&#xff0c;下面我们直接看代码吧 ReactiveCommand void Start() {//创建IObservable<bool>ReactiveProperty<bool&g…

分布式事务2种协议 及 4种模式

分布式事务协议 解决分布式事务&#xff0c;也有相应的规范和协议。分布式事务相关的协议有2PC、3PC。 由于三阶段提交协议3PC非常难实现&#xff0c;目前市面主流的分布式事务解决方案都是2PC协议。 2PC&#xff1a;两阶段提交协议 两阶段提交协议&#xff1a;事务管理器分…

如何为客户创建一个简单好用的帮助文档?

产品售后服务难&#xff0c;客服人员压力大&#xff0c;客户不满意。相信这是很多企业都面临的问题&#xff0c;产品是卖出去了&#xff0c;但是做不完的售后&#xff0c;回答不完的重复问题&#xff0c;电话、微信响个不停&#xff0c;售后服务一直都是企业的一个痛点&#xf…

JSR303数据校验和@ControllerAdvice统一异常处理

1.引入依赖&#xff08;springboot2.3之后需要引入&#xff09; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId><version>2.6.6</version> </dependency>…

scrapy总结

一、scrapy是什么&#xff1f;*结构性数据&#xff1a;即同一类型的数据如&#xff1a;某一网页上的同一类型的标签二、scrapy安装pip install scrapy出错提示to update pip&#xff0c;请升级pippython -m pip install --upgrade pip三、scrapy的基本使用&#xff08;爬虫项目…

Python __del__()方法:销毁对象

Python 通过调用 __init__() 方法构造当前类的实例化对象&#xff0c;而本节要学的 __del__() 方法&#xff0c;功能正好和 __init__() 相反&#xff0c;其用来销毁实例化对象。事实上在编写程序时&#xff0c;如果之前创建的类实例化对象后续不再使用&#xff0c;最好在适当位…

Python爬虫-某懂车平台之汽车销量排行榜

前言 本文是该专栏的第33篇,后面会持续分享python爬虫干货知识,记得关注。 之前笔者在本专栏有详细介绍过该平台二手车数据,感兴趣的同学可以在本专栏往前翻阅查找。而本文要介绍的内容,是汽车销量排行数据。 地址:aHR0cHM6Ly93d3cuZG9uZ2NoZWRpLmNvbS9zYWxlcw== (注:地…

哪个牌子台灯对孩子视力好?精选不同价位的学生护眼台灯

在我国&#xff0c;由于科技水平的提高和电子产品的普及&#xff0c;儿童青少年的近视率正逐年攀升&#xff0c;且出现低龄化现象。2020年&#xff0c;我国儿童青少年总体近视率竟高达52.7%&#xff0c;其中6岁儿童已达14.3%&#xff0c;小学生为35.6%&#xff0c;初中生为71.1…

Hue(1): Apache Hue 介绍

1 Hue 是什么 HUEHadoop User Experience Hue 是一个开源的 Apache Hadoop UI 系统&#xff0c;由 Cloudera Desktop 演化而来&#xff0c;最后 Cloudera 公司将其贡献给 Apache 基金会的 Hadoop 社区&#xff0c;它是基于Python Web 框架 Django 实现的。 通过使用 Hue&am…

GAMES101笔记:BRDF和渲染方程

BRDF : 双向反射分布函数(Bidirectional Reflectance Distribution Function) 描述从某个方向入射的能量反射到不同的方向上的能量的分布。 理解反射 从能量的角度理解反射。上图中&#xff0c;ωi\omega_iωi​方向入射的光线具有的Radiance&#xff0c;累积在微小面积dAdAd…

沉浸式 3D 场景下的多视点视频 增强算法研究

沉浸式 3D 场景下的多视点视频 增强算法研究研究内容图像质量增强为什么进行图像质量增强图像有损压缩技术多视点视频中的深度图像特点视点数目增强虚拟视点合成技术视点外推为什么进行视点数目增强主要贡献基于自适应残差网络的多视点压缩深度图像增强算法基于多约束编解码网络…

SautinSoft PDF Focus .Net 8.6.1 Crack

PDF Focus .Net 完整的 API 可在 .NET 平台上转换任何 PDF 文档, .Net 程序集提供 API 以将 PDF 转换为所有格式&#xff1a;DOCX、RTF、HTML、XML、文本、Excel、.Net 和 C# 中的图像。 介绍 PDF Focus .Net 旨在帮助您开发需要转换任何 PDF 文档的应用程序。看看PDF Focus .N…

2023年“华数杯”国际大学生数学建模A题完整思路

2023华数杯如期开赛&#xff0c;本次比赛作为美赛的模拟赛&#xff0c;赛题和比赛时间都和美赛高度相似&#xff0c;因此大家 完全可以当作一次美赛之前的练习赛进行。美赛的发题时间与华数杯一致&#xff0c;都是早晨六点&#xff0c;现已经将机器翻译的初步翻译 结果进行了分…

C#里最简单向文件追加文本的方法AppendAllText

C#里最简单向文件追加文本的方法AppendAllText 在开发的过程中,经常会碰到这样的问题,就是当一个文件没有创建时,就需要创建。但是文件已经创建了,就直接追加数据。 比如我们开发一个记录每天温度的软件, 每天都在固定的时间去记录一下这个温度,那么就需要在这个文件后面…