链表
Master.Yi
学习他人,提升自己;
提升自己,帮助他人。
展开
-
双向链表简单模板(指针版)
大一了…又开始学程设基础(梦回初一 )发现打了几年的题基本没怎么用过指针,就来写写指针版的链表…结果被恶心坏了开始写的时候没在首尾插入一个极小极大值,然后插入删除的时候就要特判好多开头结尾的空指针…后来突然想到以前做Splay的时候的方法…插个极小极大值…瞬间和谐了100倍。。#include<cstdio>struct link{ int id,val; link *pre,*nxt; link(int id=0,int val=0,link *pre=0,l原创 2021-12-23 00:28:24 · 398 阅读 · 1 评论 -
BZOJ 3217: ALOEXT 【块状链表套trie树】
题目分析:由于这位dalao实在讲的太好了,所以我就直接引用了。。由于此题需要强制在线的删除或者插入,所以我们基于块状链表分块,在每个块内存储指定区间内的所有数,以及该区间内的最大值和次大值,同时再维护一个由该区间内所有数组成的trie树。对于修改一个数,首先在该块的trie数中删除该数(直接伪删(减cnt)),然后再插入,接着更新最大值和次大值。对于插入一个数,直接在trie树...原创 2019-03-21 17:14:15 · 218 阅读 · 0 评论 -
BZOJ 3658: Jabberwocky 【双向链表+树状数组】
题目描述:平面上有n个点,每个点有k种颜色中的一个。你可以选择一条水平的线段获得在其上方或其下方的所有点,如图所示:请求出你最多能够得到多少点,使得获得的点并不包含所有的颜色。n,k<=100000题目分析:不包含所有的颜色 →\rarr→ 保证一种颜色不选,其它任意考虑两个颜色相同的横坐标相邻的点(x0,y0)(x_0,y_0)(x0,y0)和(x1,y1)(x_1,y...原创 2019-03-22 10:58:22 · 282 阅读 · 0 评论