poi2015 bzoj4377-4386训练

就按时间顺序写吧

完成度:8/10

3.30

bzoj4385 首先一定是删去连续d个数,然后枚举终点,起点显然有单调性,用单调队列乱搞搞就可以啦

bzoj4378 首先才结论:可行当且仅当把所有大于s的数全变成s然后看所有的数的和大于等于c*s,然后两个树状数组分别维护<=s的和及个数即可,注意需要离散化

3.31

bzoj4377 设一段的起点处的数为x,则m个限制条件就可以转化为x在若干个区间(或两个区间的并)里面,然后把这些区间交起来就得到了x的范围,算出个数然后减去最后m-1个数(没有连续m个数在之后)即可。

bzoj4379 显然,枚举断开的边,然后最短的就是把两边的直径中点连起来,最长的就是把两边的直径端点连起来。然后dp一发算出每个点为根的子树直径和把这个子树删去后的直径,然后直接计算即可

4.1

bzoj4380 dp[i][j][k]表示[i,j)区间内最小值不小于k的答案(只考虑走的路在[i,j)内的人),预处理出每个区间内最大费用限制>=x的人的数量,然后是否有k及k的位置即可,方案就是记录当前是否有k及k的位置然后dfs即可

4.2

bzoj4382 显然,对于每种字符,它们把圆环分为若干段,两个位置可行当且仅当对于每个字符这两个位置在同一段内,然后给每个字符的每个段编一个号,hash即可

4.3

bzoj4381 算法复合,先预处理出每个点开始每次往上走z步到达的点和一直走下去的和,取一个lim,对于z<lim的直接由预处理回答即可,z>=lim的直接暴力在树上跑即可,取lim=sqrt(n),则复杂度为预处理n*sqrt(n),询问最大sqrt(n)*log(n)。要注意各种细节,被细节wa在第一个点了一晚上。。。

bzoj4383 首先建出一些虚点表示第i个限制,比其他点大的点连一条有向边到这个限制,权值为1,然后这些限制向区间内其他点连边,权值为0。用线段树优化后一个连边过程,即k个限制把区间分为至多k+1段,每次暴力询问一段即可。然后进行拓扑排序,若有环则无解,记录每个点的最小值即可,若不符合各方面题目条件则无解。

时间: 2024-10-13 18:46:08

poi2015 bzoj4377-4386训练的相关文章

java软件系统功能设计实战训练视频教程

http://pan.baidu.com/s/1o8zAxw2 java软件系统功能设计实战训练视频教程+资料+源码 ------------------------------------------------------------------- 01:整体课程介绍和杂项介绍.mp4 02:软件功能设计常见理念和方法.mp4 03:关于软件设计的一些思考.mp4 04:第一周作业的业务和相应模式:综合应用简单工厂模式.代理模式.中介者模式.mp4 05:第一周设计作业的基础概要代码.mp4

Windows下使用Word2vec继续词向量训练

word2vec是Google在2013年提出的一款开源工具,其是一个Deep Learning(深度学习)模型(实际上该模型层次较浅,严格上还不能算是深层模型,如果word2vec上层再套一层与具体应用相关的输出层,如Softmax,便更像是一个深层模型),它将词表征成实数值向量,采用CBOW(Continuous Bag-Of-Words Model,连续词袋模型)和Skip-Gram(Continuous Skip-GramModel)两种模型.具体原理,网上有很多. 本文是在window

蓝桥杯——算法训练之乘积最大

问题描述 今年是国际数学联盟确定的"2000--世界数学年",又恰逢我国著名数学家华罗庚先生诞辰90周年.在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加.活动中,主持人给所有参加活动的选手出了这样一道题目: 设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大. 同时,为了帮助选手能够正确理解题意,主持人还举了如下的一个例子: 有一个数字串:312, 当N=3,K=1时

从零到一:caffe-windows(CPU)配置与利用mnist数据集训练第一个caffemodel

一.前言 本文会详细地阐述caffe-windows的配置教程.由于博主自己也只是个在校学生,目前也写不了太深入的东西,所以准备从最基础的开始一步步来.个人的计划是分成配置和运行官方教程,利用自己的数据集进行训练和利用caffe来实现别人论文中的模型(目前在尝试的是轻量级的SqueezeNet)三步走.不求深度,但求详细.因为说实话caffe-windows的配置当初花了挺多时间的,目前貌似还真没有从头开始一步步讲起的教程,所以博主就争取试着每一步都讲清楚吧. 这里说些题外话:之所以选择Sque

2017-8-19训练日记

今天早上起得晚,想睡好一点,中午来了看了会笔记,然后就比赛了,比赛的时候刚开始状态不是很好,1003T了一发(为啥同样的算法16级的就A了)......很伤,然后看了1009觉得可以推,大概推了半个小时,发现了摆放的椭圆形看了榜,0Y,就放弃了,然后看了1007觉得可以搞,就写了一发数位DP,调试样例过了,交上了T了,然后在本地造了1e5组数据,跑了一下时间,4300ms,超了300ms,没法了,各种优化,然后想到了进制的性质,刚开始想的是如果n在k进制下是回文数,那么在k^p下肯定是回文数,改

2017-8-18训练日记

今天总的来说有点不在状态,早上七点四十到实验室,接着看昨天的莫比乌斯反演,有在纸上证明了,九点开始训练赛,打的很菜,贪心判断的时候出了错,一直到最后都没调出来,中午回宿舍好好的睡了一觉,下午来的时候接着看莫比乌斯反演,把PoPoQQQ的课件上的题看完了,下午的时候开了点小差,装了一个elementary OS,吃饭后装好了,就没管了,开始补上午的题,就看了B,C没来的及看完,就快到9点了,开始刷BZOJ的题,一道数论,公式推得对不对还不知道,但是交上超时了,到现在还没好...今晚睡个好觉,明天打

NLP之CRF分词训练(六)

分三步1.先分词2.做BEMS标注,同时做词性标注3.训练模型 1.对语料进行分词 拿到测试部的语料或者其他渠道的语料,先对语料进行分词,我刚刚开始是用NS分词的,等CRF模型训练好后,可以直接用CRF进行分词,分完词后要人工核对分词结果,将分词分得不正确的地方修改好 2.标注词性,标注BEMS BEMS所说是中科院的提出一种标注,也有说BEIS的,hanlp用的是BEMSB:开始E:结束M/I:中间 S:单独BEMS标注已经写了一个方法generateCRF在SegAndSave.class中

训练日志

计算几何学习进入了一个瓶颈啊 = = 有些偏难的东西进展很缓慢 加上最近做题类型确实单一 导致比赛的时候经常写跪 所以打算慢慢进展计算几何内容 每天都做一些常规的水题 先说下计算几何的情况 进入了扫描线部分 和之前普通的矩形周长并啥的画风完全不同了 目前搞出来的东西也挺少 HDU 3124 给你一些平面上不相交的圆 圆上的点的最近距离 平面最近点对有固定套路 但是放到圆上还有半径 不能套用(但据说现场有人考最近点对的做法搞过去了?) 求最近距离 考虑二分 剩下的就是快速判断圆是否相交 我们考虑扫

tensorflowxun训练自己的数据集之从tfrecords读取数据

当训练数据量较小时,采用直接读取文件的方式,当训练数据量非常大时,直接读取文件的方式太耗内存,这时应采用高效的读取方法,读取tfrecords文件,这其实是一种二进制文件.tensorflow为其内置了各种存储和读取的函数,方便调用. 不知道为啥,从tfrecords中读取数据用于训练时,收敛得更快,更平稳.上面两个图是使用tfrecords的准确率和loss值变化,下面是直接读取文件的准确率和loss值变化. 1 生成记录样本的记录文件 1 root_dir = os.getcwd() 2 3