题解leetcode 704
【LeetCode 】练习str_to_date函数;over(rows between CURRENT ROW AND 2 following)实现【当月和接下来2个月】滑动窗口
题目地址 https://leetcode.cn/problems/hopper-company-queries-iii/description/ 代码 -- CTE生成2020年每月的最后一天 WITH RECURSIVE months AS ( SELECT LAST_DAY('2019-12- ......
leetcode 15.三数之和
leetcode 15.三数之和 第十五题:三数之和 1.排序 + 双指针: 和两数之和不同,但可以转化为类似的思路,即确定一个数,去找数组中是否有另外两个数之和等于它的相反数。本题的难点在于如何去除重复解,如果是无序数组,则需要对每个值所在的位置进行记录并进行比较。但如果是有序数组且相加结果为0, ......
[LeetCode] 2085. Count Common Words With One Occurrence
Given two string arrays words1 and words2, return the number of strings that appear exactly once in each of the two arrays. Example 1: Input: words1 = ......
【LeetCode 1635. Hopper 公司查询 I】with recursive生成2020年每月的最后一天
题目地址 https://leetcode.cn/problems/hopper-company-queries-i/description/ 代码 -- CTE生成2020年每月的最后一天 WITH RECURSIVE months AS ( SELECT LAST_DAY('2019-12-01 ......
【LeetCode 2854. 滚动平均步数】MySQL过去n日滑动窗口
题目地址 https://leetcode.cn/problems/rolling-average-steps/description/ 代码 WITH t1 AS ( SELECT user_id, steps_date, CASE WHEN COUNT(steps_count) OVER ( P ......
P7293 题解
传送门 思路 提供一个不太一样的容斥做法。 首先容易发现答案只和每个点到 1 号点的奇偶最短路有关,可以先 \(O(n)\) 求出来。 然后考虑枚举距离 \(d\),计算有多少个 K 元组的距离为 \(d\)。不妨设 \(d\) 为奇数,那么条件就是: 每个点的奇最短路的最大值为 \(d\); 存在 ......
【LeetCode 2989. 班级表现】T-SQL 动态sql编程示例
题目地址 https://leetcode.cn/problems/class-performance/description/ 题目大意 编写一个查询,计算学生获得的 最高分 和 最低分 之间的 总分差(3 次作业的总和)。 代码 /* Write your T-SQL query stateme ......
USACO23023DEC 题解
LG LG9979 [USACO23DEC] Target Practice S code LG9980 [USACO23DEC] Flight Routes G sol 1 已知邻接矩阵求路径数奇偶性是容易的,倒着做即可 bitset 实现。时间复杂度 \(O(\frac{n^{3}}{\omeg ......
【题解】 P4482 | 后缀自动机 树分治
一种很好写的 \(O(n\log ^2 n)\) 的做法和处理技巧,不需要会任何 border series 的知识,只需要会 SAM 和一些基础数据结构就行。 考虑 \(\text{MaxBorder}(l,r)\) 可以被写成即找到最大的 \(p \leq r - l\) 满足 \(S[l:l+ ......
【GDKOI 2024 TG Day2】不休陀螺(top) 题解
考虑一个卡牌区间怎样才不是”陀螺无限“。 一个是费用在打到一半时费用就不够了。考虑构造一个卡牌序列使其尽量能够在打到一半时费用就不够,如何构造呢? 把 \(a_i > b_i\) 的卡牌称作消耗型卡牌,其他叫做获得型卡牌。我们可以构造把消耗型卡牌全部放在前面,后面突然来个很大的 \(a_i\) 就可 ......
【LeetCode 2994. 发生在周五的交易 II】with recursive生成2023-11月所有周五的日期
题目地址 https://leetcode.cn/problems/friday-purchases-ii/description/ 代码 # Write your MySQL query statement below WITH RECURSIVE Fridays (week_of_month, ......
【LeetCode2993. 发生在周五的交易 I】MySQL里尝试实现weekofmonth功能
题目地址 https://leetcode.cn/problems/friday-purchases-i/description/ 代码 # Write your MySQL query statement below with t1 as( SELECT *, DAYOFMONTH(purchas ......
CF1876C Autosynthesis 题解
Autosynthesis - 洛谷 https://codeforces.com/contest/1876/problem/C 这次也差点想出来了 \(QwQ\) 遇到这种题第一感觉是建图。把 \(i \rightarrow a_i\) 得到一个 章鱼森林 (这里忘记了每个点只有一个出边,是章鱼森 ......
【题解】QOJ 4253 robot
考虑到不管怎么变化 \(x_i\) 的值其在 \(t\) 时刻的位置都能被一个一次函数 \(x_i\times t + b\) 表示。 而且 \(b\) 是好算的,考虑到知道现在的斜率 \(k\) 和现在的时间 \(t\) 以及现在的值 \(f(t)\),则整个函数就是 \(f(x) = f(t) ......
[COCI2015-2016#2] VUDU 题解
[COCI2015-2016#2] VUDU 题解 题意 给一个长度为 \(N\) 的整数序列 \({a}\),对于其一共 \(\frac{N\times (N+1)}{2}\) 个的非空区间,求有多少个区间的平均数大于等于 \(p\)。 暴力做法 显然,可以直接枚举区间左端点 \(j\) 与区间右 ......
CF1006E Military Problem 题解
CF1006E Military Problem 题解 题意 给定一颗有 \(n \thinspace (2 \leq n \leq 2 \times 10^5)\) 个节点的树,树根为 \(1\)。 对于每个节点 \(i \thinspace (2 \leq i \leq n)\) 都有它的父节点 ......
[COCI2012-2013#2] POPUST 题解
[COCI2012-2013#2] POPUST 题解 题意 有 \(N \thinspace (2 \leq N \leq 5 \times 10^5)\) 个物品,每个物品的原价是 \(b_i\) 元。每次选物品时,第一件选出的物品 \(i\) 价格变为 \(a_i\) 元,问选 \(i \th ......
Meaningful Mean 题解
[ARC075E] Meaningful Mean 题解 题意 给一个长度为 \(N\) 的整数序列 \({a}\),对于其一共 \(\frac{N\times (N+1)}{2}\) 个的非空区间,求有多少个区间的平均数大于等于 \(k\)。 暴力做法 显然,可以直接枚举区间左端点 \(j\) 与 ......
【题解】CatOJ C0458C 滑动窗口定期重构
标题 trick 的名字我也不知道是什么,就这样吧。 link。 首先有显然的 dp 式子:\(f(i)=\min \{f(j) \times \max\{a_{j+1},\dots,a_i\}\}\)。考虑怎么去优化它。 有显然的 \(\mathcal O(n\log n)\):考虑线段树优化 d ......
1.11模拟赛 T1题解
简要题意 \(n\le 10^3 , \sum K_i\le3\times10^5\) 思路 首先容易想到一个暴力DP,\(f_{l,r,x}\) 表示区间中最大值为 \(x\) 的最大值 稍微想亿下可以发现如果这个位置选的不是区间最大值的话,答案一定不优 所以我们可以直接 \(f_{l,r}\) ......
AT_joisc2018_b 题解
AT_joisc2018_b 题解 传送门 题意 有一个以原点为中心的正方形,有 \(n(n\le 100)\) 条不在正方形内部的线段,你需要画一些不在正方形内部的线段,使得这些线段可以把正方形围起来,要求最小化你画的线段的长度和。 思路 我们需要画出一条闭合折线,并且能够把正方形包围。 考虑我们 ......
1.11模拟赛 T2题解
简要题意 每个点有一定概率向前面的点连边,求两点之间距离的期望 思路 推柿子 code #include<bits/stdc++.h> using namespace std; #define int long long #define N 1000005 int n,m,u,v; const in ......
[LeetCode] 1363. Largest Multiple of Three 形成三的最大倍数
Given an array of digits digits, return the largest multiple of three that can be formed by concatenating some of the given digits in any order. If th ......
P4103 [HEOI2014] 大工程 题解
题目链接:大工程 先考虑只有一次查询,很显然我们可以暴力树上 dp 处理出答案。 对于每个节点而言,有: 容易看出类似点分治逐个遍历子树计算前面一堆子树对后面子树的贡献思想,我们可以很容易的知道: 对于路径总和,显然多了一段新的贡献,这段贡献为当前关键点和前面点多的一段 \(2\) 号路线长。这段长 ......
概率生成函数([CTSC2006] 歌唱王国 题解)
如果数列 {p_n} 满足 P(X=i)=p_i(即 {p_n } 为 X 的概率质量函数 PMF 所构成的数列),那么有概率生成函数:F_X(x)=\sum^{+\infty}_{i=0}P(X=i)x^i,概率生成函数具有一些性质,这些性质可以简化我们做题时的一些推导…… ......
704. 二分查找
首先我们读题抓住几个关键点: 1. 有序数组 2. 元素不重复 因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的,这些都是使用二分法的前提条件。当大家看到题目满足如上条件时,可以想一想能不能使用二分法。 二分法非常重要的是边界条件,区间的定义就是不变量,要在二分查找的过程中,保持不变量 ......
day 1 LeetCode刷题日志
今天的内容是 704 和 27 ovo 704. 二分查找 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target 写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1 Myself C: //左闭右闭 [0,1,2,3] int searc ......
P9549 「PHOI-1」路虽远 题解
题目链接:路虽远 带限制的 dijkstra,优先考虑有哪些限制条件,当做类似 dp 去写。闯黄灯次数有要求,限制速度的边数量有要求。 我们注意到,如果选择哪些边限速不易于基于贪心选择,可以考虑转换下,边数 \(-\) 限制数即为可以不限速的边,选择不限速的贪心优于限速的,这样一来,我们在有机会选择 ......
P3741题解
题目分析 给出一个字符串 \(s\),允许改变 \(0\) 或 \(1\) 个字符,求其中 VK 的出现次数。 变量/数组/函数解析 int n 字符串 \(s\) 的长度 string s 字符串 \(s\) int count(string s,string key) 自定义函数:求字符串 \( ......