斜率优化练习2——P3628 [APIO2010]特别行动队

蒟蒻的垂死挣扎这题的水令人恐惧,甚至我因为初始队列里没有加0点困扰了许久。真的不想写什么。。。// luogu-judger-enable-o2 #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<queue> #include&lt...
分类: 其他 发布时间: 08-29 23:17 阅读次数: 0

点分治练习1——P4178 Tree

蒟蒻的垂死挣扎 我好像有很久没有更博了。。。。不过觉得自己还是要记录一下的。 点分治支持在树上的询问操作,更多的是支持树上符合要求的路径的统计,形如 树上......的路径有多少 的问题一般就是点分治能解决的问题。 原理是每次处理出子树的重心,这样子树大小最少除以二,保证时间复杂度,然后强制统计经过重心的路径,保证程序的正确性。 这题可以说是模板题了 #include<iostr...
分类: 其他 发布时间: 08-29 23:17 阅读次数: 0

点分治练习2——P2634 [国家集训队]聪聪可可

蒟蒻的垂死挣扎   这道题一样是模板题,在树上大力点分一波,记录权值和mod 3的路径条数,每次计算贡献即可。 #include<iostream> #include<cstdio> #include<cstdlib> #include<cmath> #include<cstring> #include<algorithm&...
分类: 其他 发布时间: 08-29 23:16 阅读次数: 0

点分治练习3——P4149 [IOI2011]Race

蒟蒻的垂死挣扎 这题近似模板题。首先你要确定的是,你的点分治计算贡献是不能再用容斥的那个方法了,我们采取更加优秀的模板,边遍历边计算答案,然后这题就又变成模板了。 #include<iostream> #include<cstdio> #include<cstdlib> #include<cmath> #include<cstring&g...
分类: 其他 发布时间: 08-29 23:16 阅读次数: 0

动态点分治练习1——P3345 [ZJOI2015]幻想乡战略游戏

蒟蒻的垂死挣扎 动态点分治好难。。。。 动态点分治支持在原树中修改,并且可以多组询问。它基于每次找重心时,将这些重心重新构成一颗点分树,全局的重心为点分树的根,它的子树的重心是他的儿子,以此类推。这样我们就得到了一个树高为log级别的优秀的树,它就可以支持一些例如暴跳父亲的操作,从而达到优秀的复杂度。 一般解决的问题是 求全局对一个点的影响 的题。还是需要对具体题目进行分析。 对于这一题来...
分类: 其他 发布时间: 08-29 23:16 阅读次数: 0

CDQ分治&整体二分练习1——P4390 [BOI2007]Mokia 摩基亚

蒟蒻的垂死挣扎 很裸的一道CDQ分治题,这题对于每个询问处理为二维前缀的形式,那么就可以分裂成四个查询,然后以时间、x、y三维做CDQ分治,大概怎么搞都可以吧。 #include<iostream> #include<cstdio> #include<cstdlib> #include<cmath> #include<cstring&gt...
分类: 其他 发布时间: 08-29 23:16 阅读次数: 0

CDQ分治&整体二分练习2——P3527 [POI2011]MET-Meteors

蒟蒻的垂死挣扎 这题就是整体二分的裸题了,把修改和询问离线下来丢进去二分就好了。 注意一下: 1.这题是个环     2.这题多了一个hack数据是中途会暴long long的 第一个特判一下就好了,第二个的话因为询问有值域的存在所以超出值域的直接break出来即可。   #include<iostream> #include<cstdio> #include&...
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

线段树合并练习1——P3605 [USACO17JAN]Promotion Counting晋升者计数

蒟蒻的垂死挣扎 第一篇当然是模板题啦。 对每一个点开一棵线段树,动态开点,合并的时候同样动态开点总和信息即可。   #include<iostream> #include<cstdio> #include<cstdlib> #include<cmath> #include<cstring> #include<algorit...
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

线段树合并练习2——P3521 [POI2011]ROT-Tree Rotations

蒟蒻的垂死挣扎 这一题是有一些思维难度的。 首先我们发现这一棵树只有两个儿子,也就是所谓的二叉树(滑稽),每次可以通过交换左右子树来改变遍历顺序,使得叶子节点的编号逆序对最少,那么我们可以看出,子树内的交换对于外部的逆序对统计是没有影响的,那么我们每次都是合并两棵线段树,在合并的时候可以计算出两棵线段树对于另一棵线段树的逆序对的贡献,类似于分治,每一层递归都记录 一棵树的左边 对 另一棵树的右...
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

线段树合并练习3——HDU 5709 Claris Loves Painting

蒟蒻的垂死挣扎 我跟你讲,这题巨火无比。 这题求子树中深度不超过dep[u]+D的颜色种类数,甚至还十分过分的要求强制在线,然后我脑袋里浮现出了树套树套树.....就很绝望。但是仔细想想,运用之前主席树的套路,我们可以记录某种颜色深度最浅的位置,在这个位置上贡献答案。那么我们考虑记录一个Min数组表示每种颜色出现的最浅深度,每个点建一棵下标为深度的线段树记录颜色种数即可。然后我们还会发现,这个M...
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

ReactNative仿某租车软件

关于React-Native 循例都要介绍下React-Native,下面简称RN。 RN是让你使用Javascript编写的原生移动应用。它在设计原理上和React一致,通过声明式的组件机制来搭建丰富多彩的用户界面。 中文文档 本文分为以下几点 搭建RN
分类: 编程语言 发布时间: 08-29 23:15 阅读次数: 0

[bzoj4987]Tree_树形dp

Tree bzoj-4987 题目大意:给定一颗n个点的有边权的树,选出k个点,使得:$\sum\limits_{i=1}^{k-1}dis_idis_j$最小。 注释:$1\le n\le 3000$。 想法: 我们考虑答案的可能形态: 肯定是一颗大小为k的联通子树这是显然的。 那么我们考虑如果把答案的$dis_{k-1}dis_k$加上,就是每条边都算两遍。 现在把最后一项去掉了,我们当然要好好利用,所以我们的答案一定是所有边权*2-直径长度。 这样就可以$dp$了: 状态:$dp[i][
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

chapter4.5匿名函数

匿名函数 lambda 参数列表:表达式 lambda x : x**2 (lambda x :x**2)(4) 不推荐  fn = lambda x,y :(x+y)**2  ,建议使用普通函数 使用lambda关键字来定义匿名函数 冒号分割参数列表和表达式 表达式的值就是匿名函数的返回值,不能是赋值表达式 只能写在一行,称为单行函数 高阶函数传参时,使用lambda
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

day3-python--数组

list1=[1,2] list2=[1,2,3,[4,56]] print(list2[3][1]) list3=[1,2,3,4,['a','b','c','d',['一','二','三']]]#三维数组 #多维数组 nums=[1,2,3,4,['a','b','c','d','e',['一','二','三']],['四','五']] #三维数组 print(nums[5][1])#找到五 print(nums[-1][-1]) print(nums[4][5][1])#找到二 prin
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

各种推导式

# 列表推导 # l = ['鸡蛋%s' %i for i in range(10)] # print(l) # l = [] # for i in range(10): # l.append('鸡蛋%s' %i) # print(l) #生成器表达式,括号不一样,且返回值不一样 # g = (i for i in range(10)) # print(g) #生成器 # for i in g: # print(i) #
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

java 读CSV 和 Excel

1、csv和excel读写对比 开发中经常遇到数据导入和导出功能,csv 和 excel是最常见的数据格式,本文比较了下csv和excel读写相同数据的效率: 相同格式相同行数对比: csv文件比excel文件稍大 csv读取/写入比excel快 下面是读写相同格式数据的对比: csv文件读取工具类 excel文件读取工具类 工具类可以看出:csv读写是以行为单位来实现的;excel读取inputstream是直接加载到内存的。 如果用以上excel工具类读写一般需求都可以应付,如果遇到大量数
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

如何更改默认字符集

1、方法:更改配置文件(通过更改MySQL配置文件实现) 2、步骤   1、获取root权限     sudo -i   2、cd /etc/mysql/mysql.conf.d/   3、备份 :cp mysqld.cnf mysqld.cnf.bak   4、subl mysqld.cnf     找到[mysqld]     character_set_server = utf8   5、重启mysql服务     /etc/init.d/mysql restart
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

chapter5.1高阶函数

高阶函数   函数在Python中是一等公民   函数也是对象,可调用对象   函数可以做为普通变量、参数、返回值等 数学概念y = g(f(x)) 在数学和计算机科学中,高阶函数要满足至少一个以下的条件   接收一个或多个函数   输出一个函数,最多一个,不能多 def counter(base): def inc(step = 1): nonlocal base base += step return base return
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

chapter5.3类型注解及习题

函数定义的弊端 动态语言的弊端,不能事先声明类型,赋值可以是不同的类型,只有在运行时才能发现 动态语言的灵活的特性也是弊端 为解决这些问题而使用类型注解,但也只是声明,并不能强制约束   难发现,问题只有使用时才能发现,   难使用,函数使用者并不能知道数据类型 Documentation string文档说明,def后的三引号内的内容,pychram这些工具可以帮助你创建说明,惯例,不是强制标准 函数注解Function Annotations def add(x:int,y:int) ->
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0

day3-python---元组

#元组tuple也是一个列表,和列表相似,区别是元组不能修改,所以元组只有两个方法 mysql = ('123.9.23.23',3306,"root",'1234') #mysql[1]=3307 print(mysql[1]) mysql.index(3306)#找索引值 mysql.count(3306)#找某元素的个数 l=[1] t =(1) print(type(l)) print(type(t)) #小括号内只有一个元素,必须加一个逗号,才是元组,否则会以此元素判断类型 l=[1
分类: 其他 发布时间: 08-29 23:15 阅读次数: 0