摘要:
# [《从 C++98 到 C++20,寻觅甜甜的语法糖们》](https://www.luogu.com.cn/blog/AccRobin/grammar-candies#) # 这篇文章对《从 C++98 到 C++20,寻觅甜甜的语法糖们》稍有改动 - find(bg,ed,val) - 返回 阅读全文
posted @ 2023-07-01 11:28
liukejie
阅读(164)
评论(0)
推荐(1)
摘要:
# $ 自编 2048 小游戏$ ```cpp //2048小游戏原创 #include #include #include #pragma GCC optimize(2) #pragma GCC optimize(3) inline int max1 (int x, int y) { return 阅读全文
posted @ 2023-07-01 11:25
liukejie
阅读(41)
评论(0)
推荐(0)
摘要:
# $ 自编 2048 朝代版 $ ```cpp #include #include #include #pragma GCC optimize(2) #pragma GCC optimize(3) void chaodai (int n) { if (n == 2) printf ("商") ; 阅读全文
posted @ 2023-07-01 11:25
liukejie
阅读(30)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT4160) ### 思路 对于这道题,读入的 $a$ 数组最终肯定会变成 $1$。 $\because$ 读入的是 $1 \sim n$,最小值是 $1$。 $\therefore$ $a$ 数组最终肯定会 阅读全文
posted @ 2023-07-01 11:23
liukejie
阅读(18)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT3732) ### 思路 $\because$ 要求的是 $k$ 的最大长度, $\therefore$ 无需考虑翻转次数。 对于第 $i$ 个字符来说,假设它不等于前 $i - 1$ 个字符,前 $i - 阅读全文
posted @ 2023-07-01 11:22
liukejie
阅读(18)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT2299) ___ ### 思路 这道题我们可以开一个桶, 统计一共有多少个不同的数。 如果个数是偶数的话, 最后的答案要 $-1$。 比如样例 ```cpp 5 1 2 1 3 7 ``` 不同的数有 $ 阅读全文
posted @ 2023-07-01 11:21
liukejie
阅读(15)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/solution/AT3882) ___ ### 思路 这道题很简单,就是纯 Dfs。 先建图,表示 $l$ 在 $r$ 的左边,距离为 $d$,$r$ 在 $l$ 的右边,距离为 $-d$。 再开一个 $f$ 阅读全文
posted @ 2023-07-01 11:21
liukejie
阅读(22)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT4733) ___ ### 思路 分层图跑最短路。 ___ $∵$ 题目中说每次只能走 $3$ 步, $∴$ 我们可以把一条边拆成三条边, 拆成 $1$ 到 $2$,$2$ 到 $3$,$3$ 到 $2$ 阅读全文
posted @ 2023-07-01 11:20
liukejie
阅读(25)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT4848) ___ ### 思路 这道题,如果一边输入一边 Dfs,肯定会超时的。 那么,我们注意到题目中说的一句话: **每次操作将 $p_i$ 的子树中所有点的计数器增加 $x_i$。** 那么可以离线 阅读全文
posted @ 2023-07-01 11:16
liukejie
阅读(37)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/SP904) ___ ### 思路 我们可以进行两遍 Dfs,第一遍 Dfs,把这个点与它连通的图形打标记,第二遍 Dfs,统计图形的周长。 怎样统计周长??? 如果到了边界,就统计四个方向是否走过,如果没走过 阅读全文
posted @ 2023-07-01 11:16
liukejie
阅读(14)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT4299) ___ ### 思路 灯有两种形式:一种是开,一种是关,我们自然而然的想到了二进制:用 $1$ 代表开,用 $0$ 代表关。这样我们就可以用 `bool` 类型来存下一个灯的状态。 由于这道题数 阅读全文
posted @ 2023-07-01 11:14
liukejie
阅读(37)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT1716) ___ ### 思路: + 若 $A$ 袋有一个数等于 $C$,那么答案就包含着 $B$ 袋中的两个数; + 若 $B$ 袋有一个数等于 $C$,那么答案就包含着 $A$ 袋中的两个数; 当然, 阅读全文
posted @ 2023-07-01 11:11
liukejie
阅读(18)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT4724) ___ ### 思路 这一题可以看成从左边取出 $l$ 个宝石,从右边取出 $r$ 个宝石,最后从手中取出 $k-l-r$ 颗宝石。 但是从手中取出的 $k-l-r$ 颗宝石不一定是手中最小的 阅读全文
posted @ 2023-07-01 11:06
liukejie
阅读(29)
评论(0)
推荐(0)
摘要:
### [题目传送门](https://www.luogu.com.cn/problem/AT3637) ___ ### 思路 因为拼接后的字符串满足对称,所以这道题其实就是要求 $i \sim len$ 的字符串是否回文。 本题中字符串 $S$ 的长度很短,所以可以直接暴力,时间复杂度为 $O(n 阅读全文
posted @ 2023-07-01 11:05
liukejie
阅读(17)
评论(0)
推荐(0)
摘要:
# 题意 $N$ 个点, $N - 1$ 条边,求只与 $1$ 个点连通的点的数量。 # 思路 定义一个桶数组 $a_i$,表示第 $i$ 个点连通的点的数量,一边输入一边统计,最后遍历一遍,统计答案。 ### 代码如下: ```cpp #include using namespace std; i 阅读全文
posted @ 2023-07-01 11:03
liukejie
阅读(22)
评论(0)
推荐(0)
摘要:
# 思路 一道结论题。 当有任意一个点有奇数个度时,那么必然存在一条边从这个点出发只被加过奇数次,不符合题意,故只要有一个点出现了奇数次,直接输出 `NO` 即可。 当所有点都是偶数次的时候,一条链肯定是满足题目的要求的,直接输出 `YES` 即可。 # 代码如下 ```cpp #include # 阅读全文
posted @ 2023-07-01 11:00
liukejie
阅读(24)
评论(0)
推荐(0)
摘要:
# 思路 因为 $a_i$ 在 $1 \sim 10^9$ 均匀随机生成,所以可以考虑枚举 $a_i$ 的倍数,用 $map$ 记录每个数被枚举的次数。 # 代码如下 ```cpp #include // #define int long long #define rep(i, l, r) for( 阅读全文
posted @ 2023-07-01 10:58
liukejie
阅读(21)
评论(0)
推荐(0)
摘要:
树状数组模板(3) 题意要求:给定一个序列,支持区间修改和区间查询。 设 $tree_i=a_i-a_{i-1}$(差分),那么容易得到:$tree_1+tree_2+...+tree_i=a_i$ 这个公式 所以,只需要维护 $tree$ 数组就可以实现区间修改了。 那么问题来了,如果这样,那么如 阅读全文
posted @ 2023-07-01 10:55
liukejie
阅读(458)
评论(0)
推荐(0)
摘要:
## 思路 这道题,线段树模版题。 - 操作 $1$:将 $A_X$ 替换为 $A_X \oplus Y$(单点修改) - 操作 $2$:输出 $A_{X}\oplus A_{X+1}\oplus A_{X+2}\oplus\dots\oplus A_Y$(区间异或和)。 于是这道题只需要维护一个支 阅读全文
posted @ 2023-07-01 10:53
liukejie
阅读(27)
评论(0)
推荐(0)
摘要:
## 思路 一道线段树优化 dp 题。 设 $dp_i$ 表示以第 $i$ 个数字结尾的最长选数列长度,则 $dp_i=\max(dp_i, dp_j)+1$,其中 $j using namespace std; #define int long long #define rep(i, l, r) 阅读全文
posted @ 2023-07-01 10:52
liukejie
阅读(12)
评论(0)
推荐(0)
摘要:
如果用暴力筛因子的方法,在 $t < 10^4, n < 10^7$ 下肯定是要超时的,所以用了时间和空间都较优的埃氏筛法来预处理出 $1 \sim 10^7$ 的质数。 对于每一个 $n$,先提取出 $n$ 的每一位,放到一个数组里。求出数组的全排列,(使用函数 `next_permutation 阅读全文
posted @ 2023-07-01 10:51
liukejie
阅读(16)
评论(0)
推荐(0)
摘要:
### 思路 思路蛮简单,因为“好的”必须是要连续的,所以可以直接暴力枚举一遍序列。如果当前数满足条件就计数器累加,不满足条件就取 $\max$,然后计数器就重置为 $2$ 即可,注意,长度为 $\leq 2$ 的数列肯定是“好的”,直接输出 $n$ 即可。 ```cpp #include usin 阅读全文
posted @ 2023-07-01 10:33
liukejie
阅读(18)
评论(0)
推荐(0)
摘要:
### 思路 按题意模拟即可。 在 $1$ 至 $\sqrt{n}$ 之间寻找 $n$ 的因数,如果 $i $ 是 $n$ 的因数,那么 $n÷i$ 一定也是 $n$ 的因数,再判断 $i$ 和 $n÷i$ 是否与 $x$ 含有共同数字。如果有,则方案数加一。 注意:如果 $i$ 和 $n÷i$ 是 阅读全文
posted @ 2023-07-01 10:28
liukejie
阅读(13)
评论(0)
推荐(0)
摘要:
### 思路 一道数学智力题。 因为 $n$ 的范围是 $10^5$,所以我们考虑 $O(n)$ 解决。 统计现在总共有多少个红,蓝,绿的帽子,再判断有多少种颜色的帽子个数是和输入的数相等的,表示当前有多少种方案,最后累乘一下即可。 ### 代码如下 ```cpp #include using na 阅读全文
posted @ 2023-07-01 10:28
liukejie
阅读(21)
评论(0)
推荐(0)
摘要:
### 思路 首先,因为小 $A$ 的得分是无上限的,所以很容易得知最好的名次是第一名。 然后我们可以想到贪心策略,因为最大排名其实就等同于最差成绩,所以达成最差成绩就是让成绩高的人在符合情况的条件下最多。 ### 代码如下 ```cpp #include using namespace std; 阅读全文
posted @ 2023-07-01 10:22
liukejie
阅读(28)
评论(0)
推荐(0)
摘要:
如图,$∠AOB=30°$,$M$,$N$ 分别是 $OA$,$OB$ 上的定点,$P$,$Q$ 分别是边 $OB$,$OA$ 上的动点,如果记 $∠AMP=\alpha$,$∠ONQ=\beta$,当 $MP+PQ+QN$ 最小时,则 $\alpha$ 与 $\beta$ 的数量关系是______ 阅读全文
posted @ 2023-07-01 09:27
liukejie
阅读(37)
评论(0)
推荐(0)

浙公网安备 33010602011771号