![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode周赛
文章平均质量分 68
桃花仙人~
这个作者很懒,什么都没留下…
展开
-
LeetCode周赛,bitset使用
需要频繁的对一些数进行加法操作,这时把所有数看成是二进制当中的一位,进行左移运算即是加法bitset一些常用操作。原创 2024-06-09 13:18:46 · 344 阅读 · 0 评论 -
leetcode289周赛
6070. 计算字符串的数字和这个题模拟一遍,首先把字符串按照k分割,用substr接着把分割好的字符串转为数字相加,然后转为字符串再赋给sclass Solution {public: string digitSum(string s, int k) { while(s.size() > k) { string res; for(int i = 0; i < s.si原创 2022-04-17 12:58:53 · 511 阅读 · 0 评论 -
第 244 场周赛
目录[ 判断矩阵经轮转后是否一致](https://leetcode-cn.com/problems/determine-whether-matrix-can-be-obtained-by-rotation/)主要考查数组的翻转,直接新建一个数组,将行翻转为列即可 判断矩阵经轮转后是否一致给你两个大小为 n x n 的二进制矩阵 mat 和 target 。现 以 90 度顺时针轮转 矩阵 mat 中的元素 若干次 ,如果能够使 mat 与 target 一致,返回 true ;否则,返回 false原创 2021-06-06 17:52:20 · 125 阅读 · 0 评论 -
LeetCode241周赛
文章目录找出所有子集的异或总和再求和思路思路找出所有子集的异或总和再求和一个数组的 异或总和 定义为数组中所有元素按位 XOR 的结果;如果数组为 空 ,则异或总和为 0 。例如,数组 [2,5,6] 的 异或总和 为 2 XOR 5 XOR 6 = 1 。给你一个数组 nums ,请你求出 nums 中每个 子集 的 异或总和 ,计算并返回这些值相加之 和 。注意:在本题中,元素 相同 的不同子集应 多次 计数。数组 a 是数组 b 的一个 子集 的前提条件是:从 b 删除几个(也可能不删除原创 2021-05-16 17:33:53 · 129 阅读 · 0 评论 -
LeetCode214周赛题解
销售价值减少的颜色球有几个关键点从大到小排序,并在末尾插入一个0 主要思路是将最大的数跟次大的数的差卖掉,这是本轮能卖的最大值,然后这时记录一下有i+1个最大值,去寻找次大值,再次相减卖气球,这次卖是一下子卖掉这i+1个最大值跟次大值的和, 这里的number记录这里有几个最大值等着去被卖,val代表每次卖一回最大值,能卖几轮,所以下边的cnt其实也是能卖几轮的意思,如果最小值是orders/number 说明order不是很够用了,快要到末尾了(这轮是挺不过去了)然后算出cnt用等差数列原创 2020-11-08 21:07:07 · 179 阅读 · 0 评论 -
DP----通过给定词典构造目标字符串的方案数
通过给定词典构造目标字符串的方案数dp[i][j]代表使用words列表中的字符串的 前i个位置的字符 构造target的第J个字符如果使用i个字符跟target【j】相等则dp【i】【j】<---cnt[c]*dp[i-1][j-1] 因为求方案数所以用乘法不使用第i个字符dp【i】【j】<----dp[i-1][k]const int N=1e3+10,mod=1e9+7;class Solution {public: int dp[N][N...原创 2020-11-01 23:07:06 · 104 阅读 · 0 评论 -
统计只差一个字符的子串数目
统计只差一个字符的子串数目纯暴力,首先枚举长度,长度一定要取两个字符串最小的防止越界然后枚举s的起点,枚举t的起点,从起点加上长度比较只允许不同的字符为1,ans++class Solution {public: int countSubstrings(string s, string t) { int n=s.size(),m=t.size(); int T=min(n,m),ans=0,cnt; for(int len=1;le原创 2020-11-01 22:09:52 · 141 阅读 · 0 评论 -
第 K 条最小指令
第 K 条最小指令简单来说就是hhhhhvvvvv的第k个排列组合,但是纯暴力会超时分开来看,求第K个排列,第一位选则H的排列共有C[n+m-1][m]种,m代表选择V所以总数-1,m不变如果k<=C[n+m-1][m]则可以确定第一位就是H否则就是第一位为V 则k需要减少C[n+m-1][m]种,继续重复,总共n+m次class Solution {public: int C[31][16]; void init() { C..原创 2020-11-01 22:00:16 · 183 阅读 · 0 评论 -
LeetCode 211周赛
两个相同字符之间的最长子字符串主要考点是哈希从前往后扫描,如果之前没见到该字母则记录该字母下表,否则两个下标相减可以手动定义数组但需要初始化为 -1(因为字符串从下标从0开始)也可以用unordered_map<char,int> m 如果 m.count(s[i]) 记得count函数class Solution {public: int hash[30] ; int maxLengthBetweenEqualCharacters(string s..原创 2020-10-18 19:54:25 · 132 阅读 · 0 评论