自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 2020-10-31 一周总结 并查集

并查集分类问题,集合内具有传递性,对称性,反对称性基操:find()寻找根节点unio()合并集合{统计区间内点的个数,点到父亲节点距离}query()查询集合分类问题:带权边做法,扩展域做法eg 1:食物链题目:动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这N个动物所构成的食物链关系进行描述:第一种说法是”1 X Y”,表示

2020-10-31 17:03:20 71

原创 Educational Codeforces Round 109 C. Robot Collisions(栈的应用)

传送门简单分析发现,如果两个机器人距离为2的整数倍,则二者不论方向如何一定会发生碰撞(先不考虑消除),转化为分别考虑坐标为奇数和坐标为偶数的机器人,(后面的思路都是按照其中一种说的)。考虑时间,(我直接从全体上想,没有收获),查看官方题解后,思路是,对于每一个机器人来说,如果方向向左,则一定会与前面第一个方向向右的机器人相撞,创建一个栈,存放方向向右的机器人,如果栈中元素为空,则它会在x=0的墙壁反向,可以给它的坐标加一个偏移量将他的方向改为向右,存入栈中,如果该机器人方向向右,直接存入栈中,最后栈中会

2021-05-27 20:09:09 180

原创 HDU - 6556

The World前段时间,tyd和zx环游了世界,他们玩的非常开心,并且发现了很多好玩的事情。世界各地都有不同的时区,导致时差。 在这里,你可以了解几个著名的首都及其相应的时区。北京Beijing - 中国 - UTC + 8(中国标准时间)华盛顿Washington - 美国 - UTC - 5(东部标准时间)伦敦London - 英国 - UTC(格林威治标准时间)莫斯科Moscow - 俄罗斯 - UTC + 3(莫斯科时间)根据城市的当地时间,您需要计算上述首都中另一个特定城市的日期

2020-11-30 19:50:16 293

原创 2020-11-21 一周总结线段树

总结之前先来点好玩的,1.printf("%d%c",x," \n"[i==last]) ,非常骚气的换行,(在看别人题解时发现的)" \n"[i==last] ,当i==last 返回" \n"[1]就是’\n’,否则返回 ’ ';2.读入10以上位的整数你还是只会用字符串吗,可以用整形数组int a[N];for(int i=0;i<N;i++) scanf("%1d",a[i]); //控制每次只读入一个整数线段树1维护区间的各种属性(最大值,最小值,区间和,最大公约数)基操:

2020-11-21 19:08:29 107

原创 2020-11-8 一周总结 树状数组

树状数组tr[i]的意义是 i-lowbit(i)+1到i长度为lowbit(i)的区间和实现不难,难在做题时理清思路,知道该用树状数组树状数组基本操作:1.修改数列中某一个数 O(logn)2.求前缀和 O(logn)扩展操作:1.修改连续区间的值2.求某个点的值问题基本类型:实质求某个区间和基操:lowbit()2进制中排在末尾的1int lowbit(int x){ return x&-x;}add(int x,int c) 在a[x]上+cvoid ad

2020-11-08 17:35:55 139

原创 D. Unmerge(DP)

Codeforces Round #658 (Div. 2)D. Unmerge题目:Let a and b be two arrays of lengths n and m, respectively, with no elements in common. We can define a new array merge(a,b) of length n+m recursively as follows:If one of the arrays is empty, the result is th

2020-10-24 20:20:50 110

原创 2020-10-15

Acwing模板数论1.快速幂#include<iostream>using namespace std;typedef long long ll;int kmi(int a,int b,int p){ ll res=1%p; while(b) { if(b&1) res=res*a%p; b>>=1; a=a*1ll*a%p; } return res;}int m

2020-10-15 20:23:09 105 1

转载 数位DP(暑期提高)

数位DP(暑期提高)数位iDP技巧1:【X,Y】 = > f(Y) - f(X-1)技巧2: 树第一道例题,度的数量*转化为求一个l~~r的b进制数中有两位是1其余为都是0的题目思路:将最高为化成0—An-1,与An两种情况,依次向下划分,直到遍历整个容器。#include<iostream>#include<algorithm>#include<vector>using namespace std;const int maxn = 35

2020-07-08 15:25:53 153

原创 C语言:L1-027 出租 (20 分)

题目:下面是新浪微博上曾经很火的一张图:一时间网上一片求救声,急问这个怎么破。其实这段代码很简单,index数组就是arr数组的下标,index[0]=2 对应 arr[2]=1,index[1]=0 对应 arr[0]=8,index[2]=3 对应 arr[3]=0,以此类推…… 很容易得到电话号码是18013820100。本题要求你编写一个程序,为任何一个电话号码生成这段代码 —— 事...

2019-12-28 16:22:19 3902

原创 PTA

L1-016 查验身份证 (15分)一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10M:1 0 X 9 8 7...

2019-12-26 20:31:15 209

空空如也

空空如也

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

TA关注的人

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