leetcode第 109 场双周赛
6930. 检查数组是否是好的 - 力扣(LeetCode)
首先判断数组长度是不是最大值 + 1, 然后排个序,判断0到n - 2是不是都是1到最大值的一个排列,满足这些返回true就行了
class Solution {
public:
bool isGood(vector<int>& num) {
int ma = 0;
for(auto i : num){
ma = max(ma, i);
}
if(ma + 1!= num.size())
return false;
sort(num.begin(), num.end());
for(int i = 0;i < num.size() - 2;i ++){
if(num[i] + 1 != num[i + 1])
return false;
}
return true;
}
};
6926. 将字符串中的元音字母排序 - 力扣(LeetCode)
先把s里的元音字母取出来,然后排序,最后替换掉s中的元音字母即可
class Solution {
public:
string sortVowels(string s) {
string os = "";
string yuan = "aeiouAEIOU";
for(auto i : s ){
if(yuan.find(i) != -1){
os += i;
}
}
sort(os.begin(),os.end());
int cnt = 0;
for(int i = 0;i < s.size();i ++){
if(yuan.find(s[i]) != -1){
s[i] = os[cnt++];
}
}
return s;
}
};
6931. 访问数组中的位置使分数最大 - 力扣(LeetCode)
从\(i\)可以跳掉任意\(i < j\)的\(j\)的位置,要使得\(i\)处分数最大,则就是求\(j\)处的分数最大,所以我们可以从最后转移到初始位置,分别从奇数和偶数转移
class Solution {
public:
long long maxScore(vector<int>& nums, int x) {
long long n = nums.size();
vector<vector<long long>> dp(2, vector<long long> (n , 0));
dp[nums[n - 1] & 1][n - 1] = nums[n - 1];
dp[!(nums[n - 1] & 1)][n - 1] = max(0,nums[n - 1] - x);
for(long long i = n - 2;i >= 0;i --){
dp[0][i] = dp[0][i + 1];
dp[1][i] = dp[1][i + 1];
dp[nums[i] & 1][i] += nums[i];
dp[0][i] = max(dp[0][i], dp[1][i] - x);
dp[1][i] = max(dp[1][i], dp[0][i] - x);
}
return dp[nums[0] & 1][0];
}
};
6922. 将一个数字表示成幂的和的方案数 - 力扣(LeetCode)
01 背包模板题。把正整数的 \(x\) 次幂看成一个物品,求的就是把 \(n\) 件物品凑成 \(n\) 的方案数。复杂度 \(\mathcal{O}(n^2)\)
class Solution {
public:
int numberOfWays(int n, int x) {
const int mod = 1e9 + 7;
vector<int> p(n + 1);
for(int i = 1;i <= n;i ++){
long long res = pow(i, x);
p[i] = res % mod;
}
vector<int> dp(n + 1);
dp[0] = 1;
for(int i = 1;i <= n;i ++){
for(int j = n;j >= p[i];j--){
dp[j] = (dp[j] + dp[j - p[i]]) % mod;
}
}
return dp[n];
}
};
leetcode第 109 场双周赛的更多相关文章
- LeetCode第8场双周赛(Java)
这次我只做对一题. 原因是题目返回值类型有误,写的是 String[] ,实际上应该返回 List<String> . 好吧,只能自认倒霉.就当涨涨经验. 5068. 前后拼接 解题思路 ...
- LeetCode 第 15 场双周赛
1287.有序数组中出现次数超过25%的元素 1288.删除被覆盖区间 1286.字母组合迭代器 1289.下降路径最小和 II 下降和不能只保留原数组中最小的两个,hacked. 1287.有序数组 ...
- LeetCode 第 14 场双周赛
基础的 api 还是不够熟悉啊 5112. 十六进制魔术数字 class Solution { public: char *lltoa(long long num, char *str, int ra ...
- LeetCode第29场双周赛题解
第一题 用一个新数组newSalary保存去掉最低和最高工资的工资列表,然后遍历newSalary,计算总和,除以元素个数,就得到了平均值. class Solution { public: doub ...
- Java实现 LeetCode第30场双周赛 (题号5177,5445,5446,5447)
这套题不算难,但是因为是昨天晚上太晚了,好久没有大晚上写过代码了,有点不适应,今天上午一看还是挺简单的 5177. 转变日期格式 给你一个字符串 date ,它的格式为 Day Month Yea ...
- leetcode-第11场双周赛-5089-安排会议日程
题目描述: 自己的提交: class Solution: def minAvailableDuration(self, slots1: List[List[int]], slots2: List[Li ...
- leetcode-第11场双周赛-5088-等差数列中缺失的数字
题目描述: 自己的提交: class Solution: def missingNumber(self, arr: List[int]) -> int: if len(arr) == 2: re ...
- leetcode-第五场双周赛-1134-阿姆斯特朗数
第一次提交: class Solution: def isArmstrong(self, N: int) -> bool: n = N l = len(str(N)) res = 0 while ...
- leetcode-第五场双周赛-1133-最大唯一数
第一次提交: class Solution: def largestUniqueNumber(self, A: List[int]) -> int: dict = {} for i in A: ...
- LeetCode 双周赛 98,脑筋急转弯转不过来!
本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 大家好,我是小彭. 昨晚是 LeetCode 第 98 场双周赛,你参加了吗?这场周赛需要脑筋急转弯,转不过 ...
随机推荐
- SQLite vs MySQL vs PostgreSQL对比总结
开发业务系统时,是绕不开RDBMS(关系型数据库)的.虽然现在诞生了各种NoSQL的数据库,RDBMS在业务系统中的严谨和优势依然无法取代. 近几年大大小小的项目中,常用的三种RDBMS(SQLite ...
- Mac修改文件名的颜色
文章目录 前言 文件类型 LSCOLORS介绍 颜色 如何设置LSCOLORS环境变量 前言 Mac中修改文件名颜色是通过LSCOLORS这个环境变量来控制的 文件类型 11种文件类型信息如下所示 序 ...
- C#/.NET/.NET Core编程技巧练习集(学习,实践干货)
DotNet Exercises介绍 DotNetGuide专栏C#/.NET/.NET Core编程常用语法.算法.技巧.中间件.类库练习集,配套详细的文章教程讲解,助你快速掌握C#/.NET/.N ...
- Sql Server 创建用户并限制权限
创建登录名 使用sa或者Windows身份验证登录,[安全性]-[登录名],右键[新建登录名] 设置登录名属性 设置数据库权限 db owner --拥有数据库全部权限,包括删除数据库权限 db ac ...
- MongoDB手稿
- CF414B
这道题dp状态表示需要一点思维,而且会卡到时间复杂度 之前题主用的是试除法,时间复杂度为n^2.5,然后被卡了,但是换一种写法就是对的 #include <iostream> #inclu ...
- C++使用gnuplot-cpp库绘制图像
最近想要对一些时变的变量进行可视化,搜索来搜索去选择了使用gnuplot这个工具. sudo apt-get install gnuplot sudo apt-get install gnuplot- ...
- 图扑低代码数字孪生 Web SCADA 智慧钢厂
2024 年 4 月,中国钢铁工业协会发布了<钢铁行业数字化转型评估报告(2023年)>(以下简称<报告>).<报告>指出,绝大部分钢铁企业建立了数字化转型相关管理 ...
- mysql Using join buffer (Block Nested Loop) join连接查询优化
最近在优化链表查询的时候发现就算链接的表里面不到1w的数据链接查询也需要10多秒,这个速度简直不能忍受 通过EXPLAIN发现,extra中有数据是Using join buffer (Block N ...
- Django4全栈进阶之路24 项目实战(报修类型表):CKEditor富文本
CKEditor是一个强大的富文本编辑器,可以用于在网站或应用程序中创建和编辑内容.以下是在安装和使用CKEditor的一般步骤: 安装CKEditor: 下载CKEditor:访问CKEditor官 ...