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 场双周赛的更多相关文章

  1. LeetCode第8场双周赛(Java)

    这次我只做对一题. 原因是题目返回值类型有误,写的是 String[] ,实际上应该返回 List<String> . 好吧,只能自认倒霉.就当涨涨经验. 5068. 前后拼接 解题思路 ...

  2. LeetCode 第 15 场双周赛

    1287.有序数组中出现次数超过25%的元素 1288.删除被覆盖区间 1286.字母组合迭代器 1289.下降路径最小和 II 下降和不能只保留原数组中最小的两个,hacked. 1287.有序数组 ...

  3. LeetCode 第 14 场双周赛

    基础的 api 还是不够熟悉啊 5112. 十六进制魔术数字 class Solution { public: char *lltoa(long long num, char *str, int ra ...

  4. LeetCode第29场双周赛题解

    第一题 用一个新数组newSalary保存去掉最低和最高工资的工资列表,然后遍历newSalary,计算总和,除以元素个数,就得到了平均值. class Solution { public: doub ...

  5. Java实现 LeetCode第30场双周赛 (题号5177,5445,5446,5447)

    这套题不算难,但是因为是昨天晚上太晚了,好久没有大晚上写过代码了,有点不适应,今天上午一看还是挺简单的 5177. 转变日期格式   给你一个字符串 date ,它的格式为 Day Month Yea ...

  6. leetcode-第11场双周赛-5089-安排会议日程

    题目描述: 自己的提交: class Solution: def minAvailableDuration(self, slots1: List[List[int]], slots2: List[Li ...

  7. leetcode-第11场双周赛-5088-等差数列中缺失的数字

    题目描述: 自己的提交: class Solution: def missingNumber(self, arr: List[int]) -> int: if len(arr) == 2: re ...

  8. leetcode-第五场双周赛-1134-阿姆斯特朗数

    第一次提交: class Solution: def isArmstrong(self, N: int) -> bool: n = N l = len(str(N)) res = 0 while ...

  9. leetcode-第五场双周赛-1133-最大唯一数

    第一次提交: class Solution: def largestUniqueNumber(self, A: List[int]) -> int: dict = {} for i in A: ...

  10. LeetCode 双周赛 98,脑筋急转弯转不过来!

    本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问. 大家好,我是小彭. 昨晚是 LeetCode 第 98 场双周赛,你参加了吗?这场周赛需要脑筋急转弯,转不过 ...

随机推荐

  1. spring使用RedisCacheManager管理key的一些问题

    spring可以很好地管理各种内存的快速缓存. 这些常见的内存缓存库实现方式有redis,Ehcache. 本文阐述的是redis,毕竟这个东西相当容易使用. spring通过 org.springf ...

  2. Linux 网络编程的5种IO模型 总结

    背景 在网络编程中,经常会用到一些模型,在这里做一下总结. 正文 Linux 网络编程的5种IO模型:阻塞IO与非阻塞IO 这是最简单的模型,一般配合多线程来实现. Linux 网络编程的5种IO模型 ...

  3. 实时系统Preempt RT与Xenomai之争!谁更主流,谁更实时?

    选择争论一直存在 大家知道EtherCAT是实时现场总线技术,当我们开发一款支持EtherCAT总线的控制器时,实时操作系统的选择不仅对于产品本身是最重要的一部分,而且对产品研发的整个过程也影响深远. ...

  4. 微信小程序广告自动访问:让广告收益轻松翻倍的利器

    微信小程序流量主挂机刷广告脚本/机器人/助手 在当下这个数字化飞速发展的时代,微信小程序已经成为商家推广和吸引流量的重要平台.然而,对于很多小程序流量主来说,如何最大化地利用广告资源.提升广告收益,却 ...

  5. windows 安装fvm 安装使用FVM,管理多版本flutter

    背景:win10 1,先用clash代理powershell命令,解决网络问题 2.使用dart 安装FVM dart pub global activate fvm 3.安装后检查系统环境变量 3. ...

  6. 什么情况下会使用array.reduce函数

    当业务需要从一个数组里求出某项的和的时候. 1.for遍历 var a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] var resulte = 0; for (let inde ...

  7. Libgdx游戏开发(7)——开始游戏界面实现

    原文: Libgdx游戏开发(7)--开始游戏界面实现-Stars-One的杂货小窝 上篇文章也是讲解了如何实现暂停,但实际上,上篇的做法可能不够优雅 因为暂停和游戏界面我们可以分成2个Screen对 ...

  8. Nuxt.js 错误侦探:useError 组合函数

    title: Nuxt.js 错误侦探:useError 组合函数 date: 2024/7/14 updated: 2024/7/14 author: cmdragon excerpt: 摘要:文章 ...

  9. [oeasy]python0010 - python虚拟机解释执行py文件的原理

    ​ 解释运行程序 回忆上次内容 我们这次设置了断点 设置断点的目的是更快地调试 调试的目的是去除​​bug​​ 别害怕​​bug​​ 一步步地总能找到​​bug​​ 这就是程序员基本功 调试​​deb ...

  10. AT_agc022_a 题解

    洛谷链接&Atcoder 链接 本篇题解为此题较简单做法及较少码量,并且码风优良,请放心阅读. 题目简述 给定字符串 \(S\) , 仅包含互不相同的小写字母, 你需要找到仅包含互不相同的小写 ...