自定义博客皮肤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)
  • 收藏
  • 关注

原创 2021 ICPC 澳门站 K

K.Link-Cut Tree思路按从小到大的边的顺序加边,每加一次边查看是否有环,有环马上进行bfs找环并输出答案具体看注释,写的应该挺详细学到的东西如何找环并输出环利用并查集可以在O(1)时间内判断图中是否有环,学习!!!bool merge(int x,int y,int w){ if (find(x) == find(y)) {return 1; } // 这两个点已经在同一个集合中 输出成环标志 g[x].push_back({y,w}); // 建立

2022-04-06 10:31:50 615

原创 代码源每日一题DIV2 #563. 子串分值和

代码源每日一题DIV2 #563. 子串分值和思路ans = 出现a的所有子串数量+出现b的所有子串数量+…+出现z的所有子串数量f(aaa)为什么=1,因为它只属于出现a的子串,f(abc)为什么=3,因为它属于出现a的子串也属于出现b的子串也属于出现c的子串学到的东西计数问题—》枚举可能出现的字符而非枚举每一个串正难则反,要找到含有a的所有子串很难,那么就用(所有子串数量-不含a的子串数量)对于一个长度为len的字符串,它的所有子串数量为 (len∗(len+1)/2)(len*

2022-03-19 16:22:46 289

原创 代码源每日一题DIV2 #106 订单编号

代码源每日一题DIV2 #106 订单编号思路使用set维护未使用编号,即set里面的所有区间中的每个编号都是未被使用过的,每次根据编号的情况进行打印新编号以及维护区间学到的东西用set维护区间的思想将点问题包含入区间中进行求解编码技巧:set里面可以装pair,且pair中进行lower_bound的效果为lower_bound() returns an iterator pointing to the first element in the range [first, la

2022-03-19 11:19:38 416

原创 Codeforces Round #775 (Div. 2, based on Moscow Open Olympiad in Informatics) 题解

A. Game思路只能跳一次!!!!从左和从右开始找到第一个0,然后相减+2(从0回到上一格的1陆地)即可经验教训无AC代码#define int long longconst int maxn = 2e5 + 10;int a[maxn];void solve(){ int n;cin>>n; int ans = 0; int flagz = 0; for (int i = 1; i <= n; ++i) {

2022-03-07 20:40:41 581

原创 AtCoder Beginner Contest 242 题解

A - T-shirt思路要么一定得到,要么不可能得到,要么按题意概率直接列公式算概率经验教训无AC代码#define int long longvoid solve() { int a,b,c,x; cin>>a>>b>>c>>x; cout<<fixed<<setprecision(9); if (x<=a) cout<<1<<'\n';

2022-03-06 13:56:05 993

原创 CodeForce 774 div2 A-C,E题解

``E. Power Board思路重复的数是从哪里来的?比如4 = 222^222, 那么 424^242 就会跟 (22)2(2^2)^2(22)2 = 242^424 重复,所以可以看出,所有的重复,都是因为底数可以划分为某个数的k次幂造成的。所以我们以不可再分的底数作为分类标准,预处理出所有的最小底数的k次幂(如果某一行的m次幂写成 (it)m(i^t)^m(it)m的形式,则k=t*m)(由于 220>1e62^{20} >1e6220>1e6,所以t最大到20)有多少

2022-03-06 00:31:32 337

原创 AtCoder Regular Contest 136 B 题解

AtCoder Regular Contest 136 B有关逆序对的讨论对于不存在相同数字的逆序对,进行题意操作并不会改变逆序对奇偶性以 1 3 5 举例进行题意操作后所有可能的序列为1 3 5(逆序对数量为0)5 1 3(逆序对数量为2)3 5 1(逆序对数量为2)对于存在相同数字的逆序对,进行题意操作可能会改变逆序对奇偶性以 1 1 4 举例进行题意操作后所有可能的序列为1 1 4(逆序对数量为0)4 1 1(逆序对数量为2)1

2022-03-01 22:11:20 256

原创 Codeforces Round #750 (Div. 2) 记录

Codeforces Round #750 (Div. 2) 记录A.Luntik and Concerts思路无经验教训无AC代码#include <iostream>#include <string>#include <iomanip>#include <vector>#include <set>#include <cmath>#include <stack>#include

2022-03-01 21:55:24 58

原创 python学习笔记之有参装饰器

零、无参装饰器补充(如何伪装的一模一样?)python帮你写好了,直接用就行!实例代码:from functools import wrapsdef outter(func): @wraps(func) def wrapper(*args, **kwargs): res = func(*args, **kwargs) # res=index(1,2) return res?一、有参装饰器1.1 什么是有参装饰器?能够给wrapper传入除了f

2021-04-08 23:31:20 94

原创 python笔记之装饰器

1.为什么要有装饰器?为了给函数增加新功能,而且不改变函数自身代码,也不改变函数调用方式2.装饰器原理?闭包函数加语法糖语法糖自动实现“偷梁换柱”(在被装饰函数的上方一行加上@装饰器名)闭包函数中内层函数用来实现新功能,并且调用原来的函数3.装饰器结构3个函数:外层函数(用来传入被装饰函数),内层函数(1.调用被装饰函数 2.增添新的功能),被装饰函数 1.外层函数:仅仅用来传被装饰函数(闭包函数其实是一种传参方式,因为内层为了接受任意被装饰函数的参数,形参是*args和**kwra

2021-04-07 20:28:30 58

空空如也

空空如也

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

TA关注的人

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