2023-11-06 LeetCode每日一题(最大单词长度乘积)

news2024/11/25 16:46:36

2023-11-06每日一题

一、题目编号

318. 最大单词长度乘积

二、题目链接

点击跳转到题目位置

三、题目描述

给你一个字符串数组 words ,找出并返回 length(words[i]) * length(words[j]) 的最大值,并且这两个单词不含有公共字母。如果不存在这样的两个单词,返回 0 。

示例 1: 在这里插入图片描述

示例 2:
在这里插入图片描述
示例 3:
在这里插入图片描述
提示:

  • 2 <= words.length <= 1000
  • 1 <= words[i].length <= 1000
  • words[i] 仅包含小写字母

四、解题代码

class Solution {
public:
    int maxProduct(vector<string>& words) {
        int n = words.size();
        vector<int> mask(n);
        for(int i = 0; i < n; ++i){
            string word = words[i];
            for(int j = 0; j < word.size(); ++j){
                mask[i] |= 1 << (word[j] - 'a');
            }
        }
        int max_length = 0;
        for(int i = 0; i < n; ++i){
            for(int j = i + 1; j < n; ++j){
                if(((mask[i] & mask[j]) == 0)){
                    max_length = max(max_length, (int)words[i].size() * (int)words[j].size());
                }
            }
        }
    return max_length;
    }
};

五、解题思路

(1) 使用位运算中的或运算得到每个字符串的二进制编码。

(2) 两个二进制编码进行按位与运算得到是否有相同字符。

(3) 满足条件后更新最大的单词长度成绩。

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

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

相关文章

每天一个公众号干货|定时群发教程

每天一个公众号排版小知识&#xff0c;今天分享的是定时群发功能&#xff0c;一次性给你讲清楚 公众号定时群发可以让我们在固定的时间精准的发表文章&#xff0c;这对发文强迫症的小伙伴来时是一个非常神仙的功能&#xff0c;如果群发之前有事耽误发表了&#xff0c;也可以使…

【Orangepi Zero2 全志H616】驱动舵机控制 / Linux定时器(signal、setitimer)

一、SG90舵机开发 舵机基本介绍 二、Linux定时器 signal 函数setitimer 函数原型signal、setitimer函数API调用 三、舵机 软件PWM实现 一、SG90舵机开发 舵机基本介绍 如下图所示&#xff0c;最便宜的舵机sg90&#xff0c;常用三根或者四根接线&#xff0c;黄色为PWM信号控…

简单工厂VS工厂方法

工厂方法模式–制造细节无需知 前面介绍过简单工厂模式&#xff0c;简单工厂模式只是最基本的创建实例相关的设计模式。在真实情况下&#xff0c;有更多复杂的情况需要处理。简单工厂生成实例的类&#xff0c;知道了太多的细节&#xff0c;这就导致这个类很容易出现难维护、灵…

Eolink Apikit 版本更新:「数据字典」功能上线、支持 MongoDB 数据库操作、金融行业私有化协议、GitLab 生成 API 文档...

&#x1f389; 新增 搭建自定义接口协议架构&#xff0c;支持快速适配金融行业各类型私有协议的导入、编辑和展示。 数据字典功能上线&#xff0c;支持以数据字典的形式管理参数枚举值&#xff1b; 数据库连接支持 MongoDB 数据库操作&#xff1b; 基于 Apikit 类型导入 API…

DDD学习笔记

1)ddd&#xff1a; 软件复杂性的应对之道。 但是不是说&#xff1a;redis这种不会使用。 开发过程中&#xff0c;一直面临的一种复杂性。 是一种架构思想: 领域之间的组合。 让开发软件具有搭积木的感觉。 领域的核心是边界。 以领域划分为基础。 以通用语言为建设…

1-3 docker 安装 prometheus

一、环境 1、环境准备 安装Docker 镜像加速 安装 docker 检查版本 安装Docker-compose 二、Docker-compose 安装 Prometheus 1、【方式一】手动创建 docker-compose 和 配置文件 创建prometheus监控的文件夹 创建alertmanager的配置文件 - config.yml 新建grafana的…

YOLOv8 C2f模块融合shuffleAttention注意力机制

1. 引言 1.1YOLOv8直接添加注意力机制 yolov8添加注意力机制是一个非常常见的操作&#xff0c;常见的操作直接将注意力机制添加至YOLOv8的某一层之后&#xff0c;这种改进特别常见。 示例如下&#xff1a; 新版yolov8添加注意力机制&#xff08;以NAMAttention注意力机制为例…

jsonlite库

jsonlite是一个R语言中用于处理JSON数据的库。它提供了一组简单而强大的函数&#xff0c;用于解析、生成和转换JSON数据。 使用jsonlite库&#xff0c;您可以轻松地将JSON数据解析为R语言中的数据结构&#xff0c;如列表或数据框。您还可以将R语言中的数据结构转换为JSON格式&…

解决vue3父组件执行子组件方法报错:TypeError: Cannot read properties of null

现象&#xff1a; 父组件执行子组件的代码&#xff1a; 原因&#xff1a; Vue3使用的所有变量除了来自父组件传值的props以外&#xff0c;其他的html绑定的所有本地变量都必须通过return导出&#xff01; 这一点是vue3 最坑爹的一点。很容易忘记。 解决办法&#xff1a;使用t…

世界500强通信巨头全面推进SDLC,打造高质量的数字解决方案

某通信巨头是世界500强企业&#xff0c;全球领先的信息与通信技术解决方案供应商。多年来&#xff0c;该公司在数字化领域一直走在前列&#xff0c;打造了大量数字化创新解决方案和成功案例&#xff0c;助力合作伙伴更好地理解和应用数字化技术&#xff0c;实现自身的发展和价值…

c语言 简单认识 指针和结构体

指针 代码 #include <stdio.h>int main(){int a 10;//指针类型需要与变量的类型相同&#xff0c;且后面需要添加一个*符号&#xff08;注意这里不是乘法运算&#xff09;表示是对于类型的指针int * p &a; //这里的&并不是进行按位与运算&#xff0c;而是取…

Kubernetes 的四个网络挑战

Kubernetes 的主要职责之一是在应用程序之间共享节点。由于这些应用程序需要相互通信并与外部世界通信&#xff0c;因此网络是一个基本的需求。 Kubernetes 托管的分布式应用程序架构 来自 Kubernetes 集群外部的请求通常通过负责将它们代理到适当服务的路由器或 API 网关进行…

mac安装python3

文章目录 1. 安装1.1 brew安装&#xff08;失败&#xff09;2. 下载安装包 2. 查看版本3. 配置 1. 安装 1.1 brew安装&#xff08;失败&#xff09; brew install python3下载完成后报错&#xff1a;Error: python3.10: unknown or unsupported macOS version: :dunno 解决&a…

边缘计算助力低速无人驾驶驶入多场景落地快车道

自动驾驶刮起的风&#xff0c;如今正吹向低速无人驾驶赛道。近期不完全统计显示&#xff0c;当前A股及港股正在排队IPO的自动驾驶相关企业共有12家&#xff0c;其中实现盈利的企业仅两家&#xff0c;而且实现盈利的两家企业最主要的收入并不完全源于自动驾驶领域。 相比之下&am…

微信小程序webview中嵌套uniapp时的文件下载问题

文章目录 背景解决方案一、思路二、引入依赖三、H5端代码四、微信小程序端代码 效果图参考 前往闪闪の小窝以获得更好的阅读和评论体验 背景 这个标题就已经够抽象了吧 本来用微信小程序的web-view去嵌套h5已经因为微信的种种限制&#xff08;微信不希望你把微信小程序当做一…

五、计算机网络

&#xff08;一&#xff09;OSI/RM 七层模型 七层模型是计算机网络的基石&#xff0c;整个计算机网络是构建与七层模型之上的。 在数据链路层&#xff0c;数据开始以帧为单位&#xff0c;网卡的 MAC 地址就是数据帧的地址&#xff0c;数据的传输开始有地址了。 局域网是工作…

3.JMeter高级使用-让你与众不同

概述 今日目标&#xff1a; 插件下载与安装Basic Graphs 主要点 Average Response Time 平均响应时间Active Threads 活动线程数Successful/Failed Transactions 成功/失败 事务数 Additional Graphs 主要点 Response Codes 响应码Bytes Throughput 吞吐量Connect Times 连接…

【C++】类与对象 第三篇(初始化列表,explicit,static,友元,内部类)

再谈构造函数 构造函数体赋值 在创建对象时&#xff0c;编译器通过调用构造函数给对象各个成员变量一个合适的初始值 class Date{public:Date(int year, int month, int day){_year year;_month month;_day day;}​private:int _year;int _month;int _day;}; 虽然上述…

成语猜猜猜小程序源码系统 自带流量主功能帮你赚钱,带完整搭建教程

今天来给大家介绍一款成语猜猜猜小程序源码系统 。随着小程序生态的日益繁荣&#xff0c;越来越多的人开始关注小程序的开发和运营。成语猜猜猜作为一种具有趣味性和知识性的游戏形式&#xff0c;在小程序领域中备受欢迎。因此&#xff0c;开发一个成语猜猜猜小程序源码系统&am…

轻松理解 Transformers (3): Feed-Forward Layer部分

编者按&#xff1a;随着人工智能技术的不断发展Transformer架构已经成为了当今最为热门的话题之一。前馈层作为Transformer架构中的重要组成部分&#xff0c;其作用和特点备受关注。本文通过浅显易懂的语言和生活中的例子&#xff0c;帮助读者逐步理解Transformers中的前馈层。…