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 场双周赛,你参加了吗?这场周赛需要脑筋急转弯,转不过 ...
随机推荐
- 实验六-Salt本地pojie实验
[实验目的]了解Salt型密码的加密机制,学会使用本地密码pojie工具来pojieSalt型密码,了解pojie密码原理. [知识点]Salt,密码pojie [实验原理] 1.Salt概念 在密码 ...
- maven项目创建默认目录结构
maven项目创建默认目录结构命令 项目文件夹未创建情况下 mvn \ archetype:generate \ -DgroupId=com.lits.parent \ -DartifactId=my ...
- ansible(1)---师傅领进门
背景 在企业里,运维需要配合开发进行产品上架,说白了就是把写好的代码上服务器.那么,就会出现这样的问题:需要运维人员配置好系统,配置好环境,配置好网络,配置好程序,配置好所有所有的依赖环境. ...
- python安装pywifi
1.Windows安装: 在Dos窗口中输入以下命令: pip install pywifi 如果找不到pip命令,那么需要将Python安装文件夹下Scripts文件夹的绝对路径加入环境变量中. 2 ...
- Android ADB命令集锦
Android ADB命令集锦 原文(有删改):https://blog.csdn.net/dianziagen/article/details/57400723 本文包括: adb基本指令 Shel ...
- UML建模、设计原则
# UML统一建模语言 定义: 用于软件系统设计与分析的语言工具 目的: 帮助开发人员更好的梳理逻辑.思路 官网: https://www.omg.org/spec/UML 画图工具可以用在线网址:h ...
- 微软GraphRAG框架源码解读
两个月前,微软发布了GraphRAG的论文<From Local to Global: A Graph RAG Approach to Query-Focused Summarization&g ...
- 日常工作中需要避免的9个React坏习惯
前言 React是前端开发领域中最受欢迎的JavaScript库之一,但有时候在编写React应用程序时,可能陷入一些不佳的习惯和错误做法.这些不佳的习惯可能导致性能下降.代码难以维护,以及其他问题. ...
- MoneyPrinterPlus全面支持本地Ollama大模型
MoneyPrinterPlus现在支持批量混剪,一键AI生成视频,一键批量发布短视频这些功能了. 之前支持的大模型是常用的云厂商,比如OpenAI,Azure,Kimi,Qianfan,Baichu ...
- [oeasy]python020在游戏中体验数值自由_勇闯地下城_终端文字游戏
继续运行 回忆上次内容 上次使用shell环境中的命令 命令 作用 cd 改变文件夹 pwd 显示当前文件夹 ls 列出当前文件夹下的内容 最终 进入 目录 找到 游戏 如果git clone 根 ...