1239. 串联字符串的最大长度;2826. 将三个组排序;2563. 统计公平数对的数目

这篇具有很好参考价值的文章主要介绍了1239. 串联字符串的最大长度;2826. 将三个组排序;2563. 统计公平数对的数目。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1239. 串联字符串的最大长度

核心思想:递归,选或者不选,定义dfs(i,pre)表示从i-n的满足要求的arr中选择字符串串联所能获得的最大长度为dfs(i,pre),pre表示已经选过的字符串所组成的集合。然后就有两种情况选,或者不选,选的话需要保证mask[i]和pre没有公共字母,dfs(i+1,pre|mask[i]),不选的话dfs(i+1,pre)。这里判断是否有公共字母利用了位运算,用二进制数来表示一个字符串,比如abc就等于111,c就等于100,然后1表示含这个字母,这里有一个误区就是arr不用处理,不容易想到,如果arr中的单词已经有相同字母了,那么我们就把它从arr中删除=不添加到masks,masks想到于剔除不满足要求的字符串后每个字符串的二进制数。统计答案的时候只需要把1的个数统计出来即可。

1239. 串联字符串的最大长度;2826. 将三个组排序;2563. 统计公平数对的数目,算法,深度优先,python

2826. 将三个组排序

核心思想:问题转换,问你nums的最长递增子序列是多长,然后用n-最长递增子序列即可,有点技巧性不太容易想到,这里求最长递增子序列我们用的是g[i]表示长度为i+1的递增子序列的最后一个元素的最小值为g[i],也可以用动态规划来求最长递增子序列。

1239. 串联字符串的最大长度;2826. 将三个组排序;2563. 统计公平数对的数目,算法,深度优先,python

2563. 统计公平数对的数目

核心思想:枚举,对于一个数对来说谁作为i,谁作为j都行,因为只要它们不是同一个数i<j的,所以我们可以对nums进行排序,这是这题的核心。然后对lower <= nums[i] + nums[j] <= upper进行变形,lower-nums[j] <= nums[i]<= upper-nums[j],我们通过枚举nums[j]然后看前面有多少个nums[i]满足这个范围要求即可,然后我们可以统计r:<= upper-nums[j]的个数,以及小于l:lower-nums[j]的个数,然后r-l就是满足要求的个数,由于nums是排好序的,所以统计个数可以用二分法来实现,这里就不再讨论二分的边界问题了。

1239. 串联字符串的最大长度;2826. 将三个组排序;2563. 统计公平数对的数目,算法,深度优先,python文章来源地址https://www.toymoban.com/news/detail-680549.html

到了这里,关于1239. 串联字符串的最大长度;2826. 将三个组排序;2563. 统计公平数对的数目的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C/C++字符函数和字符串函数详解————长度受限制的字符串函数

    个人主页:点我进入主页 专栏分类:C语言初阶      C语言程序设计————KTV       C语言小游戏     C语言进阶 C语言刷题 欢迎大家点赞,评论,收藏。 一起努力,一起奔赴大厂。 目录 1.前言         2.长度受限制的字符串函数 2.1strncpy函数 2.2strncat函数 2.3strncmp函数

    2024年02月08日
    浏览(31)
  • 字符串后面补最短长度的字符,使其整体成回文字符串(java)

    给定一个字符串str,只能在str的后面添加字符,想让str整体变成回文串,返回至少要添加几个字符 首先介绍下manacher 算法: Manacher 算法是一种线性时间复杂度的求解最长回文子串的算法。它的核心思想是利用已知回文信息,避免重复计算。 Manacher 算法的基本思想是通过预处

    2024年02月16日
    浏览(27)
  • Java如何求得字符串的长度

    在 Java 中,要获取字符串的长度,可以使用 String 类的 length() 方法 其语法格式: 字符串名.length(); 返回的值是int类型的长度值。 举例: 1.例如现在接收到了一串字符串,可能接收到的是正常的字符串,也有可能是空字符串,这时候就需要判断下字符串是否存在值,就可以使

    2024年02月16日
    浏览(30)
  • java中压缩字符串的长度

    在 Java 中,可以使用压缩算法对字符串进行压缩,以减少字符串的长度。常见的压缩算法包括 Gzip、Deflate 和 Bzip2 等。 下面是一个使用 Gzip 压缩算法对字符串进行压缩的示例代码: 在这个示例代码中,我们首先定义了一个需要压缩的字符串 originalString 。然后,我们使用 Gzi

    2024年02月16日
    浏览(31)
  • Python计算字符串长度的函数

    1、使用内置函数len 这是Python中一种常用的函数,主要功能就是对字符串的长度进行统计,最后会返回一个字符串的实际长度,使用方法如下: 在示例中str就是一个要计算的字符串,它还可以是列表或者是字典等等。 2、使用for循环 使用for循环来统计字符串的长度时,我们可以

    2024年02月13日
    浏览(40)
  • LeetCode——最小化字符串长度

    目录 一、题目 二、题目解读  三、代码  1、set去重 2、用一个二进制数记录每个字母是否出现过 6462. 最小化字符串长度 - 力扣(Leetcode) 给你一个下标从  0  开始的字符串  s  ,重复执行下述操作  任意  次: 在字符串中选出一个下标  i  ,并使  c  为字符串下标  i

    2024年02月08日
    浏览(33)
  • 【Python系列】获取字符串的长度

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年04月09日
    浏览(35)
  • Java格式化字符串输出固定长度,不够长度空格补全长度

    字串格式化输出经常用到,将字串固定输出长度可以使用如下方式格式化输出: 输出结果: 你好              length16 %-16s :表示输出固定长度16为,如源字串长度不足16位,-表示右侧补空格至16位; 同样,如果想实现固定输出长度16位,长度不足左侧补空格,可使用%16s。

    2024年02月08日
    浏览(44)
  • QT生成固定长度的随机字符串

    最近项目中有一个需要使用QT生成固定长度随机字符串的需求,需求也很简单,就是生成一个n位的仅包含0-9以及大写字母的字符串,因为这也是第一次使用QT自身的随机数,这里就做一下简单记录。 废话不多说,直接上代码。 View Code  这段代码逻辑也很简单,以当前的时间戳

    2024年03月13日
    浏览(52)
  • C# 生成指定长度的随机字符串

     /// summary         /// 生成指定长度的随机字符串         /// /summary         /// param name=\\\"intLength\\\"随机字符串长度/param         /// param name=\\\"booNumber\\\"生成的字符串中是否包含数字/param         /// param name=\\\"booSign\\\"生成的字符串中是否包含符号/param         /// param name=\\\"booSmall

    2024年01月19日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包