题目练习
文章平均质量分 63
零的王冠
这个作者很懒,什么都没留下…
展开
-
P3224 [HNOI2012]永无乡(并查集 + splay)
P3224 [HNOI2012]永无乡题目链接思路AC代码题目链接P3224 [HNOI2012]永无乡思路我们可以直接建n棵splay,维护每一个节点,然后询问就直接查询第k小get_k。重点说一下如何建桥的事情。主要在于只有建桥,没有断桥的事情,所以我们直接用并查集维护连通性,对于要建桥的时候就暴力合并,尽量把节点数少的合并到节点数多的树。然后想到可以直接暴力合并两个splay就是一道比较水的题目了。实际上跑的还挺快,不开O2 500ms左右。AC代码#include <bit原创 2022-04-13 21:37:45 · 212 阅读 · 0 评论 -
2020ICPC南京站 E-Fireworks(三分)
2020ICPC南京站 E-Fireworks题目链接题意思路AC代码题目链接https://ac.nowcoder.com/acm/problem/216006题意做烟花,做一个需要的时间是nnn,这一个能被成功点燃的概率是p∗1e−4p*{1e^{-4}}p∗1e−4,点燃一次需要mmm的时间,问至少有一个烟花被成功点燃的期望时间。思路设成功点燃的概率是p,一共制作x个之后点燃。那么不成功的概率是1-p,连续x个都不成功的概率是(1−p)x(1-p)^x(1−p)x,所以至少有一个被点燃的概原创 2022-03-30 20:51:44 · 558 阅读 · 0 评论 -
P1835 素数密度(区间筛板子题)
P1835 素数密度原题链接思路AC代码原题链接P1835 素数密度思路区间筛板子题目。AC代码#include <bits/stdc++.h>using namespace std;#define INF 0x3f3f3f3f#define int long long#define endl "\n"const int max_n = 1e6 + 100;bool used[max_n], u[max_n];void prime(int l, int r){原创 2021-10-21 18:04:04 · 196 阅读 · 0 评论 -
CF736D Integers Have Friends(线段树区间gcd+双指针)
题目大意定义一个区间是友好的,当m>=2的时候区间l,r之间%mod值相等。给出一个数组,求最大友好区间长度。思路//gcd的性质gcd(a,b) = gcd(b,a-b)gcd(a,b,c) = gcd(b,b-a,c-b)由性质可以知道,区间gcd就是差分数组的gcd,再使用线段树去维护就可以了。区间gcd的维护方法有两种,一种是st表,一种是线段树,我使用的线段树。知道区间gcd之后,题目所求就变成了区间gcd(l,r)>=2的条件下,l,r差的最大值。由于如果右边gcd原创 2021-08-03 00:56:49 · 168 阅读 · 0 评论 -
暑假集训专题练习记录———线段树
线段树题目列表A 敌兵布阵(HDU1166)B I Hate It(HDU1754)C A Simple Problem with Integers(POJ3468)D Mayor's posters(POJ2528)E Just a Hook(HDU1698)F Balanced Lineup(POJ3264)G Can you answer these queries?(HDU4207)H Tunnel Warfare(POJ2892)I Array Partition(CF1454F)J A Sim原创 2021-07-31 00:56:20 · 148 阅读 · 1 评论