
思维
BIT_jzx
这个作者很懒,什么都没留下…
展开
-
Greedy Shopping (Codeforces)
题目You are given an arraya1,a2,…,ana1,a2,…,anof integers. This array isnon-increasing.Let's consider a line withnnshops. The shops are numbered with integers from11tonnfrom left to right. The cost of a meal in theii-th shop is equal toaiai....原创 2020-11-19 21:27:15 · 432 阅读 · 1 评论 -
牛半仙的妹子Tree(Nowcoder)
题目牛半仙的妹子的座位呈一个树状结构,由 n 个点和 n−1 条边组成,1 号结点为根。 当牛半仙的一个妹子无视 牛半仙后,一个单位时间后周围的妹子也会无视牛半仙。 有些时候牛半仙为了吸引妹子们的注意,会开启鬼畜模式,这时所有妹子无视牛半仙的状态都会消失, 恢复正常,并且这之后的状态不会被之前影响。 牛半仙想知道某个妹子是否无视了他,于是他找到了你,请你帮帮他‘题解&思路自己的思路:感觉这还是一道较为简单的树剖题...(TM调了一天)当询问的x满足原创 2020-11-03 09:16:25 · 1652 阅读 · 10 评论 -
脑瘫题
题目思路&&题解自己的思路:暴力暴力...正解:这道题首先发现贡献是可以拆开的,也就是说对于一个c的贡献:显然这里答案是j-i,但是也可以想成是j-m+m-i。这样贡献就拆开了,于是每次只需要和相邻的算一下贡献即可,即用一个结构体存一下左边端点l与右边端点r,如上图就可以存成{l,m},{m,r}那么对于查询L,R,也就是找到所有满足条件的结构体{l,r},有L<=l , R>=r的权值和但是现在考虑怎样修改,那么就要多加一维时间,就像带.原创 2020-11-01 10:30:42 · 287 阅读 · 0 评论 -
20201022考试总结
考的非常崩。。挺水的一套题,自己却犯了很严重的错误,在临考前暴露的很多不足点题目T1:祖先算法:倍增考场思路:一眼题,但是自己一直过不了样例,然后就开始自闭。因为运算是32位以内,所以当超32位是就可以直接取模即可,这是之前自己没有想到的,要划重点#include <bits/stdc++.h>using namespace std;#define ll unsigned long longconst int MAXN = 1e5 + 3;int..原创 2020-10-22 20:55:08 · 216 阅读 · 2 评论 -
VanUSee
题目题解&思路为什么我觉得这道题很难。。这是一道博弈结论题:不难发现总共两人只会移动|S|-|T|次,且最好最后一次剩的串在原序列中间,因此考虑最后剩下的字串是否可以为T,那么对于|S|-|T|为奇数,那么最后一次即为先手,所以对于位置k(k = |S|-|T| / 2下取整)如果从k开始可以匹配T,且从k+1开始也可以匹配T,则最后一定可以剩下T串。如果是偶数,那么如果从k开始可以匹配,那么最后可以剩下T,因为左右要删去的个数是相等的,否则还要讨论一种情况,如果从k-1开.原创 2020-10-16 14:01:20 · 176 阅读 · 0 评论 -
贪玩(van)蓝月
题目最窄的题目描述。。。思路&题解自己的思路这是不可能有的正解首先需要发现一个性质,如果现在已经求出k的答案,那么k+2的答案序列就一定是在k的答案序列中插入两个(可以是末尾与开头)数所得到,至于为什么,其实我也不知道,那么考虑k+2的转换,考虑CDQ假设对于k,在区间l-mid选了k1个点,mid+1-r选了k2个点那么对于k+2,就有一下情况:1.在区间l-mid选k1+1个点,mid+1-r选k2+1个点2.在区间l-mid选k1个点,mid+1..原创 2020-10-15 17:34:31 · 243 阅读 · 0 评论 -
异或(GYM102331B)
题目给定一个长度为 n 的非负整数列 a1, a2, . . . , an 和非负整数 x, 求有多少个非空子序列 1 ≤ b1 < b2 < · · · < bk ≤ n,满足对任意的 (i, j) (1 ≤ i < j ≤ k) 都有 abi ⊕ abj ≥ x。其中 ⊕ 表示按位异或。 由于这个数可能非常大,你只需要回答这个数除以 998 244 353 的余数即可。 Input 第一行两个整数 n, x (1 ≤ n ≤ 3原创 2020-10-12 13:59:25 · 652 阅读 · 0 评论 -
三角陷阱
题目思路&题解最开始想的是O(NQ)的差分数组,以为5e8能跑过去,然而。。。。这道题可以O(Q)做,即用二维差分数组,其实似乎跟二维树状数组差不多,主要这道题是三角形。我们可以选择对角线差分,即·差分后可将其分为两个操作,若现在修改成为了这样的:差分数组中就可以在最左列加上s,最后一行减去s,而这样的操作是可以进行差分的,于是用前缀数组差分即可代码#include<bits/stdc++.h>using namespace std;#defi.原创 2020-10-05 17:56:51 · 274 阅读 · 1 评论 -
[CSP-S 2019 Day1]树上的数
题目问题描述给定一个大小为的树,它共有个结点与条边,结点从编号。初始时每个结点上都有一个的数字,且每个的数字都只在恰好一个结点上出现。接下来你需要进行恰好次删边操作,每次操作你需要选一条未被删去的边,此时这条边所连接的两个结点上的数字将会交换,然后这条边将被删去。次操作过后,所有的边都将被删去。此时,按数字从小到大的顺序,将数字所在的结点编号依次排列,就得到一个结点编号的排列。现在请你求出,在最优操作方案下能得到的字典序最小的。如左图,蓝圈中的数字一开始分别在结点②、①、③、⑤、④。按照原创 2020-09-17 18:36:03 · 1210 阅读 · 0 评论