自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (1)
  • 收藏
  • 关注

原创 Educational Codeforces Round 103 (Rated for Div. 2) C. Longest Simple Cycle(思维)

有 n 条链,给出这 n 条链的长度 c[i]-1,从第二条链开始,a[i] 表示第 i 条链的头节点 1 链接前一条链的 a[i] 节点,b[i] 表示第 i 条链的尾节点链接前一条链的 b[i] 节点,在整张图中找到一个环,使得换的长度最大题目与图没有任何关系,我们可以发现 a[i]=b[i] 时,之前所形成的链一定要断,即此时的 a[i] 一定是环中度为 2 的节点如果 a[i]!=b[i] 那么就要判断是以之前的链继续,还是从 a[i] b[i] 开始重新建一条链(...

2021-01-31 10:23:06 248

原创 Educational Codeforces Round 100 (Rated for Div. 2) C. Busy Robot(模拟+思维)

给出 n 个操作,t[i] x[i] 表示在 t[i] 时刻开始移动至 x[i] 位置,如果机器人在某一时刻正在移动,那么他将不听当前操作,继续执行原来的操作,如果静止,那么执行当前操作,初始时静止由于题目将时间和空间相关联,思路比较绕;首先要明白如果机器人不动,其位置不改变但是时间一直改变设计四个量 pos,tag 为当前位置和目标位置,cur,next 为当前时间和移动结束时间,这样next=tag-pos+cur 等式成立,将时间和空间关联起来这样就比较容易想...

2021-01-26 15:59:20 342

原创 洛谷 P3072 [USACO13FEB]Perimeter S(dfs)

题目保证所有的草堆构成连通块,我们可以用 dfs 很简单的获得各个草堆的相对位置如上图所示,白色的方块为草堆的位置,那么他的外周长是绿色的方块个数,其中红色方块个数的贡献是二,也就是说绕着外周长的外面走一圈,看看当前方格挨着几个草堆,这样通过 dfs 就可以将问题解决了。遍历所有的绿色/红色方块一次且仅以此,搜索到白色那么 ans+1,此方块的任务结束const int N=2e5+5; int n,m; int i,j,k; //int a[N];...

2021-01-17 16:41:09 345

原创 Educational Codeforces Round 101 (Rated for Div. 2) C. Building a Fence(思维+贪心)

题目要求修建栅栏,第一块栅栏和最后一块栅栏必须放在地面上,第 i 个栅栏所处的地面为 h[i] ,那么该栅栏可以放在 [a[i],a[i]+k-1] 的位置,要求每一块栅栏都必须与前一块栅栏相重合至少 1 个单位格子,问是否可以修建这样的栅栏对于每一块栅栏我们可以维护改栅栏最低端所能处的位置,根据当前地形位置与前一个地形位置的关系,判断是否可以修建该栅栏const int N=2e5+5; int i,j,k; int n,m; int a[N];...

2021-01-14 14:57:03 276 1

原创 Codeforces Round #698 (Div. 2) E. Nezzar and Binary String(思维+线段树)

给出两个长度为 n 的 01 字符串,给出 m 次操作,问 m 次操作过后是否可以将第一个字符串变为第二个字符串每次操作将 [l,r] 内的字符严格小于 (r-l+1) 的字符串反转,即 1 变为 0,0 变为 1,最多反转 (r-l) 个字符 如果没有严格小于区间长度一半的字符,那么这段字符将被丢弃题目说明两个字符串长度全为 n,所以只要长度不改变就好我们将第二个字符反向操作,看是否能将其变为第一个字符串,区间覆盖问题,利用线段树求解​​​​​​​最后再一个一个进行询问...

2021-01-31 22:53:09 188 1

原创 Codeforces Round #698 (Div. 2) B. Nezzar and Lucky Number(数学)

有 n 个数,给出一个数 d定义好数,有一个 n 位数,只要有一位为 d,那么他是好数,多个好数之和也是好数判断这 n 个数是否为好数如果 x >=10d ,那么 10d+1,10d+2,……10d+9 都是好数,这样之后的数都可以凑出来 当 x<10d,如果 x 满足 10a+bd 的形式,a b 为任意数,那么就是好数const int N=1e5+5; int n,m; int i,j,k; int a[N];bool g...

2021-01-31 10:53:48 263

原创 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛 小宝的幸运数组(同余定理)

如果预处理前缀和,题目依然是的复杂度,所以采用其他的方法当时还想了一个二分的算法,但是二分必须满足单调性,但此题不满足在一个数列中 (a+b+c+d)%mod=k 其中 (a+b)%mod=k,那么 (c+d)%k=0,所以记录第一个 k 的位置,寻找之后的位置与其的最大值即可const int N=1e5+5; int n,m; int i,j,k; ll a[N];int main(){ //IOS; rush(){ ...

2021-01-30 22:32:52 218

原创 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛 建立火车站(二分)

题目描述新冠疫情,导致了各个城市之间物资输送的障碍。假设有N个城市在一条直线上,为了物资能顺利抵达各个城市,可以在路线上建立最多个数为K个暂时停靠站,由于火车在两个站台(城市也算站台)之间的距离越近,需要的总花费越少,因此我们需要让火车相邻两个站台之间的最大距离最小,求出距离L,2 ≤N ≤100000, 0 ≤K ≤100000,所有城市坐标小于等于10^12,且不存在负值。提醒: 城市坐标均为正整数,且停靠站只能建在整数坐标点上。输入描述:第一行输入城市个数N,可建立停靠站个数K.

2021-01-30 21:22:09 346

原创 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛 黑洞密码

const int N=1e5+5; int n,m; int i,j,k; int a[N]; char ch[N];int main(){ IOS; string s; cin>>s; char str[500][2]; for(int i=0;i<26;i++) str['a'+i][0]='a'+i; for(int i=0;i<25;i++) str['a'+i+26][0]='...

2021-01-30 21:19:49 262

原创 Educational Codeforces Round 103 (Rated for Div. 2) D. Journey(前缀+后缀+思维)

给出 n 条边,有 n+1 个不同的城镇,每一条边都有一个方向L 表示从 i 到 i-1 有一条边 R表示从 i 到 i+1 有一条边旅游者从每一个城镇 i 出发,每到达下一个城镇时,所有的边都会反转,L 变为 R,R 变为 L,问对于每个城镇而言,旅行者可以到达的城镇数目最多是多少首先对于每一个城镇 i 而言,如果 i 的左边为 L,那么他可以前往 i-1,i 的右边为 R,那么他可以前往 i+1我们以向右走为例:因为从 i 走到 i+1 之后,R变为 L,L 变为 R,那么如...

2021-01-30 10:56:54 411

原创 Codeforces Round #698 (Div. 2) C. Nezzar and Symmetric Array(数学)

有一个数组 a,其中对于每一个 x,都有 -x 属于 a 数组,现定义 di= { ai 与数组 a 中其他元素的距离},题目给出数组 d ,问是否存在数组 a 与之对应题目模拟一下找一下规律即可假设 a 数组有三个正数,a,b,c 按升序排列,那么剩下的三个数一定是他们的相反数,那么 d1=2*(a+b+c),d2=4*b+2*c,d3=6*c,题目已经给出 d 了,判断他们时候是整数,或者都是正数,注意,如果 a 数组中有一个为 0,那么不满足互异性const int...

2021-01-29 18:08:46 174

原创 洛谷 P4315 月下“毛景树”(边树剖)

题目不算难,但是代码量需要控制主要说一下线段树上的操作,因为有两个相关的区间操作标记,应该先覆盖后增加,因为覆盖操作会影响增加操作const int N=1e5+5; int n,m; int i,j,k; int a[N]; struct Node { int l,r; int maxx; int lazy,add; #define lson id<<1 ...

2021-01-28 15:11:14 177

原创 训练总结

这几天总算把主席树弄懂了,洛谷上的主席树的相关练习也把提高组的完成了,但是还是感觉比较空虚昨天开了一场 CF ,模拟题思路太混乱,真和洛谷上说的一样,学数据结构把自己给学傻了。一开始学习主席树的时候以为是一种特殊的权值线段树,但是主席树强就强在可以寻找历史版本,总结一下遇到的几个场景查询区间第 k 大元素的值,这算是模板题了,将数据离散化之后将每个节点维护所拥有数值的个数,而根结点 root[i] 则表示了 [1,i] 区间内的数值个数的索引 ...

2021-01-27 22:10:17 183 2

原创 洛谷 P3963 [TJOI2013] 奖学金(贪心+思维)

题目保证 n 为奇数首先找中位数我们是一定要排序的,按照成绩排序,在区间 [n/2+1,c-n/2] 中枚举 i 作为中位数,找到当 i 作为中位数时,左边 k 个最小的奖学金,和右边 k 个最小的奖学金,判断是否满足条件,取中位数的最大值即可。找区间内的前 k 个最值,没错,主席树,但是需要注意的是,在建树时一定是奖学金作为权值,但是有可能多个人同时拥有相同数目的奖学金。这里并没有采用主席树,采用前缀和+优先队列对于 i 为中位数来说,预处理出 i 左边拥有 k 个奖学金的最...

2021-01-27 14:48:14 382

原创 洛谷 P1383 高级打字机(主席树)

题目描述得不够准确,撤销时,可以将之前的撤销操作同时撤销这样题目就要求我们保留之前的所有数据,我们利用主席树维护一段字符串,长度为 1e5,假设全部是添加字符设当前的根节点为 now撤销操作相当于将之前的 now-x 节点复制过来,作为 now+1 根节点添加操作在区间的末尾添加一个字符查询操作,由于s[i] 字符放在 i 位置,所以直接查询第 x 个位置的字符即可const int N=1e5+5; int n,m; int i,j,k; ...

2021-01-27 10:40:22 210

原创 Educational Codeforces Round 100 (Rated for Div. 2) B. Find The Array(思维)

构造一个美丽数组 b,要求 在 b 数组中,任意两个相邻的数必须满足小的数整除大的数从第一个条件下手,很容易想到 1 a[2] 1 a[4] 1 的构造方法在验证算法正确性,其中将 a[2] a[4] 看作整体,a[1] a[3] a[5] 看作整体,一定有一方大于另一方,或者两者相等,所以成立const int N=2e5+5; int n,m; int i,j,k; int a[N]; int t[N];signed main...

2021-01-26 15:08:27 139 2

原创 洛谷 P3939 数颜色(主席树)

题目要用权值线段树来解决没有问题,但是权值线段树还要维护所出现的区间,采用主席树,每一种颜色建一棵树,记录其所在的位置,由于建树过程中需要动态开点,更新操作时不需要动态开点,所以要特判一下是否要开点const int N=3e5+5; int n,m; int i,j,k; int a[N]; struct Node { int l,r; int sum; #define lson id&l...

2021-01-25 22:11:19 357

原创 洛谷 P3567 [POI2014]KUR-Couriers(主席树)

由于主席树是一颗特殊的权值线段树,所以只需要判断当前节点权值所拥有的数量是否大于 (r-l+1) 即可const int N=5e5+5; int n,m; int i,j,k; int a[N]; struct Node { int l,r; int sum; }t[N*40]; int root[N],tot=0; //历史版本根节点标号,总节点个数 vector<int> v...

2021-01-25 20:17:29 199

原创 洛谷 P3919 【模板】可持久化线段树 1(可持久化数组)

const int N=1e6+5; int n,m; int i,j,k; int a[N]; struct Node { int l,r; int val; }t[N*40]; int root[N],tot=0; //历史版本根节点标号,总节点个数int build(int l,int r){ int p=++tot; if(l==r){ t[p].val=a[l]; retu...

2021-01-24 23:23:29 166

原创 洛谷 P4396 [AHOI2013]作业(莫队+值域分块)

抱歉,一开始读错题了由于最后统计 [a,b] 中有多少数出现过,以及位于 [a,b] 内的数值个数由于这两个是相关联的,所以不好一起统计,所以采用暴力的方法,但是暴力一定超时,所以在这里使用分块写分块的时候到底需要几个参数,首先对于非整块,vis[x] x出现的次数;对于整块 tag[x] x出现的次数,cnt[x] x 出现的种数const int N=1e5+5; int n,m; int i,j,k; int a[N]; struct Que...

2021-01-24 21:37:30 249

原创 洛谷 P4137 Rmq Problem / mex(莫队+值域分块)

看到这个题目后,删除 O(1) 添加 O(n),做法就是遍历区间 [now,n] 但是最后一个点会T看到有人说值域分块可以过,虽然最后一个点过了,但是前面又过不了了,最后还是要开 O2void add(int pos) //暴力添加代码{ int x=a[pos]; if(!vis[x] && now==x){ for(int i=x+1;i<=n+1;i++){ if(!vis[i]){ now=i; b...

2021-01-24 18:23:39 263

原创 洛谷 P4113 [HEOI2012]采花(树状数组)

又是一道莫队的模板题看到熟悉的 2e6 的数据量,应该也知道莫队跑步过去了,题目好不容易猜出了结论,但是却置疑他的准确这个题目和HH的项链这个题比较像同样此题也要采用树状数组来优化对于一个区间内出现的相同的颜色,我们只计算倒数第二个所做的贡献,算法的准确性:对于一个区间 [b.......a......a...c...a...d..A...e..a...f] (应该是不分大小写的)其中只有 A 对于答案有贡献,对于询问 [b,e] 或者 [c,e] 答案都只有 A...

2021-01-24 15:08:01 162

原创 牛客练习赛66 C.公因子(数论)

题目用到了一个 gcd 的推论,和 CF 的题目类似 :BLOG求出 gcd 之后,要求出 x 的值,k*gcd=a[1]+x -> k*gcd-a[1]>=0,求解 k 的值带入原式求出 x 即可const int N=1e6+5; int n,m; int i,j,k; ll a[N]; signed main(){ //IOS; while(~sd(n)){ for(int i=1;i<=n...

2021-01-24 13:56:28 190

原创 训练总结

树上莫队应该是看明白了,但带修改的莫队好像又忘了,还有回滚莫队到底是什么(雾)树上莫队采用的是欧拉序将树形结构转化为线性结构,对于刚刚回顾完树剖的我来说还是比较容易理解的,但是能记多久就不清楚了虽然之前做过主席树的模板题,但现在重新学习就和新的一样,网上的图倒是一目了然,想了一下午竟然才知道每个节点的左右儿子并不是维护区间昨天开了一场 CF ,题感觉考的比较偏,最近几次做题,分不清楚什么时候应该贪心,什么时候应该使用动态规划,盲目的猜结论,WA了之后才想要造个数据推翻,沉不住气。这周一道关于

2021-01-23 22:04:18 104

原创 Codeforces Round #691 (Div. 2) C. Row GCD(数论)

给出 n 个数,记为数组 a,给出 m 个数,记为数组 b,对于每一个数组 b 中的元素 x,输出 gcd(a1+x,a2+x,……an+x)假设有 3 个数 a,b,c,(a>b>c),这三个数 所以要求的那个式子就变成了其中 x 为 b 数组中的当前值,所以只需要预处理出除 a[1]+x 这一项的 gcd 即可const int N=2e5+5; int n,m; int i,j,k; ll a[N]; ll b[N];...

2021-01-23 20:09:00 201

原创 Codeforces Round #691 (Div. 2) B. Move and Turn

有一个机器人,一开始的朝向是任意的,方向只有正北,正南,正东,正西 4 个方向,机器人只能向前走,且每次走完了之后都会旋转 90° ,问走 n 步后可能到达多少个不同的格子可以发现走的步数与顺序无关,令 x=n/2如果走偶数步,那么在水平方向上有 ,在竖直方向上同样也有,我们需要计算有多少项,x=-x+2(c-1),加上首项 -x,一共有 x+1 项,所以答案为 如果走奇数步,那么水平方向可能有 x+1 步,也可能有 x 步,所以答案为 2*(x+1)*(x+2)int m...

2021-01-23 11:44:32 156

原创 洛谷 P3730 曼哈顿交易(莫队+值域分块)

题目应该算是莫队里面比较难的(蒟蒻的我自我安慰)求区间第 k 小数不由得想到主席树,但这是类似于众数的形式,所以还是考虑莫队但是莫队之前做过一道求众数的大小的题目,是否可以向这方面靠拢,一定要有一个数组记录 x 出现的次数,记为 a 数组。再添加一个出现过 x 次的数有多少次的数组,记为数组 b。以上两个数组是最基本的,我们要求区间内第 k 小的出现次数,暴力的话就是顺序遍历 b 数组数到 k,但是时间复杂度为 但是如果我们用分块处理一下 a 数组,这样复杂度不就变成,总体还是...

2021-01-23 10:14:08 268

原创 洛谷 SP10707 COT2 - Count on a tree II(树上莫队)

树上莫队,首先要将树上的编号映射至线性,这里采用欧拉序就样例来说,所谓欧拉序就是 {1 3 7 7 5 5 66 3 4 8 8 4 2 2 1} 其实就是要求我们在 dfs 过程中,将 x 节点进栈的时间编号和出栈的时间编号全部记录下来我们将进栈编号记为 st[x] 出栈编号记为 ed[x],再对区间进行操作时,同样分为两种情况如果查询区间 [u,v] 在同一条链上,比如 [1,5] 那么就是 [ st[1],st[5] ] 区间,注意,只有节点 1, 3 ,5 如果查询区间...

2021-01-22 17:58:28 214

原创 洛谷 P3709 大爷的字符串题(莫队+贪心)

题目其实是和这道题目一样的https://www.luogu.com.cn/problem/P1997题目中有一句话很重要将这段区间搞完后最多还会剩下多少 rp,对于题目给出的规则我们可以理解为如果区间不为空,答案为 0 存在 a∈ S,如果 a>=x ,那么清空 S,插入 a 任意 a∈ S,如果 a<x,那么直接插入 a规则可以理解为构造任意个严格单调上升子序列,但是​​​​​​​为了使最后的答案最大,我们要保持构造的子序列的数量尽可能少,举个例子:我们已经构造了如...

2021-01-21 22:06:47 196

原创 洛谷 P4116 Qtree3(树剖)

题目中默认根为 1,

2021-01-21 20:15:01 151

原创 Codeforces Round #694 (Div. 2) C. Strange Birthday Party(贪心)

题目描述的比较复杂,给出每个人一个权值 k[i],再给出 m 件商品的价格 c[j],每一个人可以选择前 k[i] 件商品作为礼物,也可以直接要c[k[i]] 钱,显然如果买商品的话这件商品就会售空,但是对应商品没有了我们可以接受这件商品的价值,问给每一个人礼物所要的最少花费题目一开始想的是动态规划,像是背包问题,但又不是,直接贪心求解,将 k[] 数组按照从大到小排序,因为最小的一定被拿,依次取商品即可const int N=3e5+5; int n,m; ...

2021-01-21 13:49:30 163

原创 Codeforces Round #694 (Div. 2) B. Strange List(模拟)

给出 n 个数,给出数 q,在数组 a[] 中,如果 a[i] 不能被 q 整除,那么结束游戏如果可以被 q 整除 ,那么在数组后面添加 q 个 a[i]/q ,最后输出数组的和按照题意模拟即可水过去,时间复杂度 O(n+nlogn)(大概)const int N=1e5+5; int n,m; int i,j,k; ll a[N]; vector<pll> v;signed main(){ IOS; r...

2021-01-21 11:48:59 185

原创 洛谷 P4092 [HEOI2016/TJOI2016]树(树剖)

题目能够像过来还是挺简单的,但想不过来就……如何将标记操作与查询操作联系起来标记操作,一开始的时候所有节点都是 1,如果修改一个节点,那么将这个节点所代表的子树全部修改,完成 查询操作,从当前节点向根节点 1 查询不就好了吗,这样做好像不太对,如果所处的节点是左子树,那么可能查询到右子树上,但是如果我们单点查询的话,将标记下放至当前节点不就好了吗const int N=1e5+5; int n,m; int i,j,k; int a[N]; ...

2021-01-21 09:32:55 213

原创 训练总结

现在距离放假已经过了 1 个星期了,本来也是打算这个寒假将上学期学过的内容重新梳理一遍,真正回到家之后却没有我想象的那么疯狂,早上 8 点起来都困难,这里忙忙那里忙忙一天就过去了,虽然回家的第一天就已经投入到计划中来,但是效率远不够,虽然在学校能够拿出5,6 个小时训练,在家里虽然看起来有更多的时间,但是这 8 小时都不知道自己在忙些什么,打算先将线段树,莫队,树剖部分和主席树的题目先处理完,线段树的内容比较多,因为都是基于线段树的产物,这部分搞完了在学一下字符串算法,在数据结构方面停留的时间太多了,这几天

2021-01-20 22:44:35 151

原创 Codeforces Round #696 (Div. 2) C. Array Destruction(模拟+思维)

有 2n 个数,第一次任意选择两个数,将他们删掉,记这两个数的最大值为 res,再从剩下的 2n-2 个数中选择两个数,在将他们删掉,但是这两个数要满足相加等于 res,将 res 更新为这两个数的最大值,以此类推,直至将所有数删掉,问是否可以完成,如果完成输出步骤题目中 n=1e3 ,摆明了要来暴力,题目中 a[i]<=1e6,可以开数组大小至 1e6,数组量再大一点可能要离散化,这里采用 map推两遍样例可以发现,如果存在答案的话,那么有种博弈的感觉,第一次一定将最大的...

2021-01-20 17:16:22 182

原创 Codeforces Round #696 (Div. 2) B. Different Divisors(数学)

给出一个数 d,要求构造一个数 n ,要求 n 保证至少有 4 个因数,且每个因数的差值都要大于等于 d首先 1 一定是因数,按照贪心下一个因数最小是 1+d,第二个因数是 1+2d,那么答案是 (1+d)*(1+2d),加上本身一共四个因数 ,这样答案显然是不对的,如果 d 是奇数,那么一定存在 2,所以打破了这个规律我们要找的是质数,这样可以保证 d+1 至 2d+1 之间没有任何因数,所以找到质数 x,y,使得 x-1>=d 和 y-x>=d即可,x*y 即为...

2021-01-20 10:14:19 294

原创 洛谷 P3038 [USACO11DEC]Grass Planting G(边树剖)

题目描述Farmer John has N barren pastures (2 <= N <= 100,000) connected by N-1 bidirectional roads, such that there is exactly one path between any two pastures. Bessie, a cow who loves her grazing time, often complains about how there is no grass on t

2021-01-19 20:46:17 227

原创 洛谷 P3833 [SHOI2012]魔法树(树剖)

题目中只要注意平时在找重儿子的时候是以 s作为根节点 s>=1 所以在此根节点为 0,要求我们将所有的节点编号 +1const int N=1e5+5; int n,m; int i,j,k; int a[N]; vector<int> G[N]; struct Node { int l, r; ll lazy,sum; #define lson id<<1...

2021-01-19 16:48:00 169

原创 洛谷 P3384 【模板】轻重链剖分(树剖)

树剖模板题,有几个注意事项并没有默认根节点,所以在标重儿子以及标 dfs 序的时候应该注意两遍 dfs 的写法 统计以 x 为根的所有节点的情况,即求 [x,x+size[x]-1] 区间内的节点,size[x] 数组表示 x 节点所拥有的孩子的数量const int N=1e5+5; int n,m; int i,j,k; int a[N]; vector<int> G[N]; struct Node ...

2021-01-19 16:21:49 263

原创 洛谷 P3097 [USACO13DEC]Optimal Milking G(线段树+dp)

题目中的修改为基本操作,但是究竟要维护什么,值得我们去讨论其实很容易想到左端点到底要不要,如果左端点要是一种情况,左端点不要有是一种情况当选择左端点时,最优的时候是不是将奇数位置上的所有点都取,还是说中间要变,这便是我们熟悉的动态规划线段的每一个点都维护一个区间内部端点的选择情况 f[i][j] 当 i =0 时,表示左端点不取,j = 0 时,表示右端点不取这样在 push_up() 函数中应用动态规划即可const int N=4e4+5;#define int ...

2021-01-19 10:08:39 225

codeblocks17.12安装包.zip

适合新手使用的编译器,之后更新 百度网盘安装包: 链接:https://pan.baidu.com/s/1M1PGcirlC0He1WjOFrw8gQ 提取码:jfq5

2020-07-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除