Day1力扣打卡

打卡记录

在这里插入图片描述


最长相邻不相等子序列 I(脑筋急转弯)

链接

思路:形如 11100110001 要达到最大,必须在重复数字选出一个,即在111中取一个1,在00中取一个0,以此类推最终便得到最长相邻不相等子序列。

class Solution {
public:vector<string> getWordsInLongestSubsequence(int n, vector<string>& words, vector<int>& groups) {vector<string> ans;for (int i = 0; i < n; i++)if (i == n - 1 || groups[i] != groups[i + 1]) ans.push_back(words[i]);return ans;}
};

最长相邻不相等子序列 II(DP)

链接

思路:「子序列 + 考虑相邻元素」DP

子序列 DP 的思考套路
子序列 + 不考虑相邻元素:选或不选。代表题目:494. 目标和(0-1 背包)
子序列 + 考虑相邻元素:枚举选哪个。代表题目:300. 最长递增子序列


class Solution {
public:vector<string> getWordsInLongestSubsequence(int n, vector<string>& words, vector<int>& groups) {auto check = [&](string& a, string& b) -> bool{if (a.size() != b.size()) return false;int m = a.size();bool flag = false;for (int i = 0; i < m; ++i){if (a[i] != b[i]){if (flag) return false;flag = true;}}return flag;};int dp[n], max_len = 1, pre[n], idx = 0;memset(pre, -1, sizeof pre);for (int i = 0; i < n; ++i){dp[i] = 1;for (int j = 0; j < i; ++j){if (groups[i] != groups[j] && check(words[i], words[j]) && dp[i] < dp[j] + 1){dp[i] = dp[j] + 1;pre[i] = j;}if (max_len < dp[i]){max_len = dp[i];idx = i;}}}vector<string> ans;for (int i = idx; i != -1; i = pre[i]) ans.push_back(words[i]);reverse(ans.begin(), ans.end());return ans;}
};

执行操作使两个字符串相等

链接
在这里插入图片描述

class Solution {
public:int minOperations(string s1, string s2, int x) {if (count(s1.begin(), s1.end(), '1') % 2 != count(s2.begin(), s2.end(), '1') % 2) {return -1;}int n = s1.length();int memo[n][n + 1][2];memset(memo, -1, sizeof(memo)); // -1 表示没有计算过function<int(int, int, bool)> dfs = [&](int i, int j, bool pre_rev) -> int {if (i < 0) {return j || pre_rev ? INT_MAX / 2 : 0;}int &res = memo[i][j][pre_rev]; // 注意这里是引用if (res != -1) { // 之前计算过return res;}if ((s1[i] == s2[i]) == !pre_rev) { // 无需反转return dfs(i - 1, j, false);}res = min(dfs(i - 1, j + 1, false) + x, dfs(i - 1, j, true) + 1);if (j) { // 可以免费反转res = min(res, dfs(i - 1, j - 1, false));}return res;};return dfs(n - 1, 0, false);}
};

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】shell运行原理及权限

主页点击直达&#xff1a;个人主页 我的小仓库&#xff1a;代码仓库 C语言偷着笑&#xff1a;C语言专栏 数据结构挨打小记&#xff1a;初阶数据结构专栏 Linux被操作记&#xff1a;Linux专栏 LeetCode刷题掉发记&#xff1a;LeetCode刷题 算法&#xff1a;算法专栏 C头疼…

Linux入门攻坚——3、基础命令学习-文件管理、别名、glob、重定向、管道、用户及组管理、权限管理

文件管理&#xff1a;cp&#xff0c;mv&#xff0c;rm cp&#xff1a;复制命令&#xff0c;copy cp [OPTION]... [-T] SRC DEST cp [OPTION]... SRC... DIRECTORY cp [OPTION]... -t DIRECTORY DEST... 如果目标不存在&#xff0c;新建DEST&#xff0c;并将…

笔试算法题ACM模式输入输出处理

1. Python input之后得到的全是string类型&#xff0c;数字需要用int(n)进行转换 读取单个数 n int(input()) 读取一串数组&#xff1a; nums [int(n) for n in input().split()] &#xff08;nums是个数组&#xff09; 读取字符串&#xff1a; stringinput().split(…

qt笔记之qml下拉标签组合框增加发送按钮发送标签内容

qt笔记之qml下拉标签组合框增加发送按钮发送标签内容 code review! 文章目录 qt笔记之qml下拉标签组合框增加发送按钮发送标签内容1.运行2.文件结构3.main.qml4.main.cc5.MyClass.h6.MyClass.cc7.CMakeLists.txt8.ComboBox.pro9.qml.qrc 1.运行 2.文件结构 3.main.qml 代码 …

【1314. 矩阵区域和】

目录 一、题目描述二、算法思想三、代码实现 一、题目描述 二、算法思想 三、代码实现 class Solution { public:vector<vector<int>> matrixBlockSum(vector<vector<int>>& mat, int k) {//先预处理数组int nmat.size();//行int mmat[0].size();…

python--短路运算,把0、空字符串和None看成 False,其他数值和非空字符串都看成 True

代码 print(3 and 4 and 5) # 5 print(5 and 6 or 7) # 6 4 > 3 and print(‘hello world’) # 输出hello world 注释&#xff1a; 在逻辑运算中&#xff0c;不一定逻辑运算符的两边都是纯表达式。也可以是数值类型的数据。 Python把0、空字符串和None看成 False&#xff…

STM32 ---- 再次学习STM32F103C8T6/STM32F409IGT6

目录 一、环境搭建及介绍 关于STM32基础介绍 新建工程 外设案例 LED流水灯 蜂鸣器 上拉电阻和下拉电阻知识 电压比较器 c语言基础知识 类型、结构体、枚举 类型int8_t int16_t int32_t 宏替换 #define 和typedef用法 结构体两种填充方法 和 命名规则 枚举用法 常用…

FPGA复习(功耗)

减小功耗 就得减小电流 电流和CF有关&#xff08; C: 电容&#xff08;被门数目和布线长度影响&#xff09; F:时钟频率&#xff09; 方法大纲 减小功耗&#xff1a;1 时钟控制 2输入控制 3减小供电电压 4双沿触发器 5修改终端 同步数字电路降低动态功耗&#xff1a;动态禁止…

langchain callback学习

文章目录 一.quickstart二.Async callbacks三.把回调消息写入文件如何提取出来正则表达式官方的方法 一.quickstart 官方文档在此&#xff1a;https://python.langchain.com/docs/modules/callbacks/ 发现自己之前用langchain都是纯纯只是跑通&#xff0c;要能灵活使用还是得深…

猫头虎博客带您使用Markdown编辑器

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

亚马逊云科技正式发布Amazon DataZone,一项新的数据管理服务

Amazon DataZone现已正式发布。作为一项新的数据管理服务&#xff0c;它能够在组织中对数据生产者和消费者之间产生的数据进行编目、发现、分析、共享和管理。 早在2022年的亚马逊云科技re:Invent上&#xff0c;就预告了Amazon DataZone产品的发布&#xff0c;并在2023年3月对其…

文件路径操作

避开-转义字符 python文件路径导致的错误常常与“\”有关&#xff0c;因为在路径中的“\”常会被误认为转义字符。 所以在上述路径中&#xff0c;\table\name\rain中的\t,\n,\r都易被识别为转义字符。 解决的办法主要由以下三种&#xff1a; #1 前面加r表示不转义 pathr&quo…

多标签分类论文笔记 | ML-Decoder: Scalable and Versatile Classification Head

个人论文精读笔记&#xff0c;主要是翻译心得&#xff0c;欢迎旁观&#xff0c;如果有兴趣可以在评论区留言&#xff0c;我们一起探讨。 Paper: https://arxiv.org/pdf/2111.12933.pdf Code: https://github.com/Alibaba-MIIL/ML_Decoder 文章目录 0. 摘要1. 介绍2. 方法2.1 Ba…

Postman简单使用

文章目录 一.接口测试流程二、Postman接口测试工具三、接口关联四、全局变量和环境变量 一.接口测试流程 拿到API接口文档&#xff08;从开发拿或者抓包获取&#xff09;&#xff0c;熟悉接口业务&#xff0c;接口地址&#xff0c;错误码等等 编写接口的测试用例以及评审 编写…

1.SpringSecurity -快速入门、加密、基础授权

SpringSecurity简介 文章目录 SpringSecurity简介一、基本概念1.1 认证&#xff08;Authentication&#xff09;方式1.2 会话(Session)介绍1.3 授权(Authorization)介绍1.4 RBAC 二、SpringSecurity入门2.1 快速入门2.1.1 Maven坐标2.1.2 接口2.1.3 源码 2.2 配置文件配置用户名…

Bugku sql注入 基于布尔的SQL盲注 经典题where information过滤

目录 绕过空格 /**/绕过 ()绕过 回车绕过 &#xff08;键按钮&#xff09;绕过 等号绕过 绕过&#xff0c;&#xff08;逗号&#xff09;使用substr 下面存在基本绕过方式 注释符绕过 /**/绕过 #绕过 /*注释内容*/绕过 //注释绕过 大小写绕过 绕过information过…

14-k8s-基本存储之EmptyDir、HostPath、NFS

文章目录 一、相关概念二、EmptyDir存储三、HostPath存储四、NFS存储 一、相关概念 概述 Volumn定义在Pod上&#xff0c;然后被该Pod里面的多个容器挂载到具体的文件目录下。实现同一个Pod中不同容器之间的数据共享以及数据的持久化存储。Volume的生命周期不和Pod中的单个容器的…

MySQL逻辑架构

文章目录 逻辑架构剖析1. 连接层2. 服务层3. 引擎层4. 存储层 SQL执行流程1. MySQL中的 SQL执行流程&#xff08;理论&#xff09;2. MySQL8中的 SQL 执行流程&#xff08;实践&#xff09;确认profiling 是否开启多次执行相同SQL查询查看profiles查看profile 3. SQL语法顺序 数…

MFC-对话框

目录 1、模态和非模态对话框&#xff1a; &#xff08;1&#xff09;、对话框的创建 &#xff08;2&#xff09;、更改默认的对话框名称 &#xff08;3&#xff09;、创建模态对话框 1&#xff09;、创建按钮跳转的界面 2&#xff09;、在跳转的窗口添加类 3&#xff0…

Ceph 中的写入放大

新钛云服已累计为您分享769篇技术干货 介绍 Ceph 是一个开源的分布式存储系统&#xff0c;设计初衷是提供较好的性能、可靠性和可扩展性。 Ceph 独一无二地在一个统一的系统中同时提供了对象、块、和文件存储功能。 Ceph 消除了对系统单一中心节点的依赖&#xff0c;实现了无中…