E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
SCOI2007
【数据结构2-2】线段树与树状数组 题解
头一次老老实实写完一个官方题单,发篇题解纪念一下——文章目录P3372【模板】线段树1P3373【模板】线段树2P4588[TJOI2018]数学计算P1502窗口的星星P2471[
SCOI2007
]降雨量
春弦_
·
2023-11-20 06:53
数据结构
数据结构
c++
算法
【数据结构】ST 表与 RMQ 算法
本文参考【朝夕的ACM笔记】数据结构-ST表在练习线段树的过程中经常会感叹代码怎么这么长啊啊啊懒标记怎么这么难传啊啊啊于是在得知有一种代码量远小于线段树的算法时、、、(其实是因为做到了[
SCOI2007
Texcavator
·
2023-10-26 08:35
数据结构
数据结构
算法
c++
P2472 [
SCOI2007
] 蜥蜴 【最大流】
对点有限制,考察拆点的技巧当时犯了一个傻逼错误:#includeusingnamespacestd;typedeflonglongll;constintN=1e6+15;constintINF=1e9;constintmo=998244353;#definepbpush_back#definepiipair#defineftfirst#definesdsecond#defineffor(i,a,b
zlq7777
·
2023-04-11 21:13
网络流
图论
算法
最大流
BZOJ1070 修车(zkw费用流 or spfa费用流)
1070:[
SCOI2007
]修车TimeLimit:1SecMemoryLimit:128MBSubmit:4900Solved:2009[Submit][Status][Discuss]Description
_ostreamBaba
·
2020-09-16 11:14
[
SCOI2007
]组队
提交:bzoj1071题目↑↑这道题题意十分简明,很容易明白但是,我经过百般尝试,还是错了QAQ经过xgc的深刻教育,终于理解了这道题做法:用单调队列来判断是否能进入队列和是否需要退出队列代码↓↓(xgc)#include#include#includeusingnamespacestd;typedeflonglongLL;structnode{LLx,y,sum;}a[5100],b[5100]
Nick_hhlab
·
2020-09-15 19:48
BZOJ
luogu P2053 [
SCOI2007
]修车(费用流提前计算)
P2053[
SCOI2007
]修车要求平均时间最短,就等同于要求总时间最短。一个人维修所花的时间,对同一位技术人员之后维修造成的影响是已知且固定的。那么,我们将费用提前计算。
繁凡さん
·
2020-08-26 15:14
#
费用流
P2053 [
SCOI2007
]修车(逆向思维分层建图)
得先把题意转化一下,否则无法建图得先把题意转化一下,否则无法建图得先把题意转化一下,否则无法建图为啥没办法建图?因为每个师傅修每辆车的代价不是为啥没办法建图?因为每个师傅修每辆车的代价不是为啥没办法建图?因为每个师傅修每辆车的代价不是定值不是定值,就想办法变成定值。不是定值,就想办法变成定值。不是定值,就想办法变成定值。考虑某个师傅一次修车a1,a2,a3,a4考虑某个师傅一次修车a_1,a_2,
issue敲腻害
·
2020-08-25 03:39
网络流24题
bzoj 1070: [
SCOI2007
]修车 zkw费用流模板
Description同一时刻有N位车主带着他们的爱车来到了汽车维修中心。维修中心共有M位技术人员,不同的技术人员对不同的车进行维修所用的时间是不同的。现在需要安排这M位技术人员所维修的车及顺序,使得顾客平均等待的时间最小。说明:顾客的等待时间是指从他把车送至维修中心到维修完毕所用的时间。Input第一行有两个m,n,表示技术人员数与顾客数。接下来n行,每行m个整数。第i+1行第j个数表示第j位技
SFN1036
·
2020-08-23 02:40
费用流
st表练习题
[
SCOI2007
]降雨量
Robert_6277
·
2020-08-23 00:53
【题解】LuoGu2470:[
SCOI2007
]压缩
原题传送门这道题跟这道很像,差别在于本题无法嵌套令dpi,j,0/1dp_{i,j,0/1}dpi,j,0/1表示区间[l,r][l,r][l,r]中有/无MMM的答案,默认在i−1i-1i−1的地方有一个MMM转移:若区间前半段和后半段相等,dpi,j,0=dpi,mid,0+1dp_{i,j,0}=dp_{i,mid,0}+1dpi,j,0=dpi,mid,0+1dpi,j,0=min(dpi
ModestCoder_
·
2020-08-19 08:18
题解
LuoGu
DP
[
SCOI2007
]降雨量 线段树和区间最值(RMQ)问题
题目链接P2471[
SCOI2007
]降雨量听说博客观看效果更佳 这道题是比较经典的RMQRMQRMQ问题,找到X和Y年间的最值来进行判断真假,用线段树维护是比较简单好写的。
ailanxier
·
2020-08-17 21:30
线段树
[洛谷P2050] [NOI2012]美食节(费用流)
https://www.luogu.org/problemnew/show/P2050题目和
SCOI2007
修车差不多,但是数据范围更大了,如果只是改了从食物到汇点的边的容量,还像那道题一样直接跑费用流会
seeeagull
·
2020-08-09 02:29
费用流
[
SCOI2007
]降雨量 线段树和区间最值(RMQ)问题
题目链接P2471[
SCOI2007
]降雨量 这道题是比较经典的\(RMQ\)问题,找到X和Y年间的最值来进行判断真假,用线段树维护是比较简单好写的(不懂线段树的可以看我的另一篇博文入门)。
ailanxier
·
2020-07-31 11:00
BZOJ-1066: [
SCOI2007
]蜥蜴(最大流)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1066裸的最大流,拆点,按关系建图,然后跑一次maxflow就可以了。代码:eaf81a4c510fd9f94edfd36e272dd42a2934a4e9.jpg.png#include#include#include#includeusingnamespacestd;#defineMAXN2
AmadeusChan
·
2020-07-16 02:31
网络流水题题单
[
SCOI2007
]蜥蜴把一个点拆成两个点中间连上点权的边luoguP2711小行星可以分成三个部,x部,y部与z部,做最小割x与s相连,w=1;z与t相连,w=1,以y部为中间部连接x与zw=infy
ProgrammerStrange
·
2020-07-07 12:00
近期刷题总结----计算几何
目录[WOJ2535]数三角形[POJ3304]Segments[codeVS1302]小矮人[ZJOI2008]瞭望塔[
SCOI2007
]最大土地面积[HAOI2008]下落的圆盘[BZOJ1249]
FSYo
·
2020-07-05 13:15
计算几何
凸包
半平面交
旋转卡壳
暑假集训Day 4 P4163 [
SCOI2007
]排列 (状压dp)
状压dp(看到s的长度不超过10就很容易想到是状压dp了但是这个题的状态转移方程比较特殊)题目大意给一个数字串s和正整数d,统计s有多少种不同的排列能被d整除(可以有前导0)。例如123434有90种排列能被2整除,其中末位为2的有30种,末位为4的有60种。输入格式输入第一行是一个整数T,表示测试数据的个数,以下每行一组s和d,中间用空格隔开。s保证只包含数字0,1,2,3,4,5,6,7,8,
HISKrrr
·
2020-06-26 15:00
P2472-[
SCOI2007
]蜥蜴【网络流】
正题题目链接:https://www.luogu.com.cn/problem/P2472题目大意n∗mn*mn∗m个格子,每个格子的石柱高度不同,蜥蜴可以跳到距离不超过ddd的石柱处,并且先前所站的石柱高度减一,为0则不能站,然后求有多少只蜥蜴不可以逃脱。解题思路考虑网络流,每只蜥蜴表示一个流,将每个石柱分成入点和出点,然后入点连出点流量为石柱高度,然后每个可以走的点之间出点连入点无限,之后有蜥
ssl_wyc
·
2020-06-22 02:34
图论
[洛谷P4467][题解][
SCOI2007
]k短路
我不是题目刚学了A*很开心于是马上码了人生中第三道紫题主要思想是令目标函数f=g+h其中g为已求出的,h为还要走的主要思想就是找出一个玄学的估价函数h*,使h*2usingnamespacestd;3intn,m,k,a,b;4structEdge{5intnext,to,wei;6}e[2510],re[2510];7inthead[60],rhead[60],cnt,rcnt;8inlinev
Konnyaku_ajh
·
2020-02-01 11:00
【题解】折纸 origami [
SCOI2007
] [P4468] [Bzoj1074]
【题解】折纸origami[
SCOI2007
][P4468][Bzoj1074]传送门:折纸\(\text{origami[
SCOI2007
][P4468]}\)\(\text{[Bzoj1074]}\
辰星凌
·
2019-12-30 16:00
[
SCOI2007
]k短路(A*)
题目描述有nn个城市和mm条单向道路,城市编号为11到nn。每条道路连接两个不同的城市,且任意两条道路要么起点不同要么终点不同,因此nn和mm满足m\len(n-1)m≤n(n−1)。给定两个城市a和b,可以给a到b的所有简单路(所有城市最多经过一次,包括起点和终点)排序:先按长度从小到大排序,长度相同时按照字典序从小到大排序。你的任务是求出a到b的第kk短路输入格式输入第一行包含五个正整数n,m
ezoi_ly
·
2019-12-28 11:00
【Luogu P2471】[
SCOI2007
]降雨量
LuoguP2471啊啊啊啊这真是一道史上最毒瘤的题目!!!!!题意就是给出n个年份的降雨量询问:“自从\(y\)年以来\(x\)年的降雨量最大”的正确性。显然有多种情况需要考虑,那么就需要通过分类讨论理清程序的逻辑了。对于“自从\(y\)年以来\(x\)年的降雨量最大”这样一句话,可以转化成如下条件:\(rain[x]=rain[x]则导出false,反之则导出maybe\\②rain[x]未知
Nanjo
·
2019-11-27 14:00
[
SCOI2007
]排列 题解
题目链接这道题的其实也可以用数学知识来解,不过需要高中数学30分\(s\le5\),那么枚举\(0\)到\(99999\),判断每个数字和输入的是否相同就行了50分50分没有什么准确的做法,应该是暴力写的好或者是正解写的丑的Part.1先说说我们今天比赛时一个不认识的dalao的做法他把每个序列进行排序构造出\(MAX\)和\(MIN\),在这个范围内做30分的做法就行代码应该可是实现我就不贴了P
Mark_X
·
2019-10-18 17:00
【
SCOI2007
】修车
【题意】同一时刻有NNN位车主带着他们的爱车来到了汽车维修中心。维修中心共有MMM位技术人员,不同的技术人员对不同的车进行维修所用的时间是不同的。现在需要安排这MMM位技术人员所维修的车及顺序,使得顾客平均等待的时间最小。说明:顾客的等待时间是指从他把车送至维修中心到维修完毕所用的时间。【分析】首先来思考一下答案的组成。假设修倒数第iii辆车花的时间为AiA_iAi,则所有车主的等待总时间为:∑
_tan45
·
2019-04-21 12:37
网络流
P2053 [
SCOI2007
]修车
题目链接这是一道很不错的费用流好题,建图的思想很是巧妙我们把每个工人拆成\(n\)个点,表示当前工人在\(n\)个不同的时间段,那么\(m\)个工人就是\(n*m\)个点,然后把这些点向汇点连一条费用为0边权为1的边,也就是同一时段一个工人只能维修一辆车。对于每辆车,我们先从汇点连出一条费用为0边权为1的边,表示每辆车只会被一个工人在一个时段维修一次。然后对于每辆车,我们向之前的\(n*m\)个点
子谦。
·
2019-03-31 11:00
[NOI2012]美食节,P2050,最小费用最大流
正题这一题是[
SCOI2007
]修车的加强版。(先看修车再做这题哦!)首先是每种菜可能有多个人需求。怎么解决?我们把菜放左边,人放右边,然后左边把流量设成就可以了。
Deep_Kevin
·
2018-11-24 08:50
[
SCOI2007
]修车,洛谷P2053,最小费用最大流
正题给出m个师傅,n台车,并给出每个师傅各个车的时间,现在要使得,n辆车一起来,等待时间最短。我们来观察一个师傅所消耗的等待时间。m个师傅所消耗的总等待时间就是车主的总等待时间。对于第a个师傅,修的车的序列是,那么总等待时间就是,因为第i个车要被自己和后面的车等待,所以会被算tot-i+1次。那么建图就是分显而易见了,对于m个师傅,每个师傅拆n个点,第a个师傅的第i个点表示的是第a个师傅修倒数第i
Deep_Kevin
·
2018-11-24 07:24
[
SCOI2007
]修车,洛谷P2053,最小费用最大流
正题给出m个师傅,n台车,并给出每个师傅各个车的时间,现在要使得,n辆车一起来,等待时间最短。我们来观察一个师傅所消耗的等待时间。m个师傅所消耗的总等待时间就是车主的总等待时间。对于第a个师傅,修的车的序列是,那么总等待时间就是,因为第i个车要被自己和后面的车等待,所以会被算tot-i+1次。那么建图就是分显而易见了,对于m个师傅,每个师傅拆n个点,第a个师傅的第i个点表示的是第a个师傅修倒数第i
Deep_Kevin
·
2018-11-24 07:24
Bzoj P1069 [
SCOI2007
]最大土地面积___凸包+旋转卡壳
题目大意:在某块平面土地上有NNN个点,你可以选择其中的任意四个点,将这片土地围起来,当然,你希望这四个点围成的多边形面积最大。N≤2000,∣x∣,∣y∣≤100000N≤2000,|x|,|y|≤100000N≤2000,∣x∣,∣y∣≤100000分析:求出凸包,枚举凸包中对角线,以对角线为底,求出两边的最大面积三角形的面积areal,areararea_l,area_rareal,area
disPlayLzy_
·
2018-11-12 21:18
C++
勾股/叉积/向量
凸包
【BZOJ1072/
SCOI2007
】排列perm
1072:[
SCOI2007
]排列permTimeLimit:10SecMemoryLimit:128MBSubmit:3111Solved:1959Description给一个数字串s和正整数d,统计
sszxzzh
·
2018-10-23 21:05
状态压缩DP
BZOJ
BZOJ1072-[
SCOI2007
]排列perm(暴力)
排列随便搞:输入一个长度小于等于10的数串,问这个串的所有排列被d整除的个数,Tusingnamespacestd;intd;intmain(){intn;inta[15];charstr[15];intT;scanf("%d",&T);while(T--){scanf("%s",str);n=strlen(str);scanf("%d",&d);for(inti=0;i
Apel_dey
·
2018-09-04 15:51
杂题
动态规划
[bzoj1069][
SCOI2007
]最大土地面积--计算几何,旋转卡壳
题目描述在某块平面土地上有N个点,你可以选择其中的任意四个点,将这片土地围起来,当然,你希望这四个点围成的多边形面积最大。Input第1行一个正整数N,接下来N行,每行2个数x,y,表示该点的横坐标和纵坐标。Output最大的多边形面积,答案精确到小数点后3位。SampleInput5001011010.50.5SampleOutput1.000题解这道题目就是给你一个点集,问你选4个点能构成的最
dark_dawn
·
2018-08-07 10:34
计算几何
[bzoj1073][
SCOI2007
]kshort【K短路】
【题目链接】https://www.lydsy.com/JudgeOnline/problem.php?id=1073【题解】重点:我没有cheat题意非常简单,就是求aa到bb的第k大简单路径。普通的A*算法并没有可靠的复杂度保证。这里介绍一种有复杂度保证的Yen算法。先给一个简单的概括:首先求出aa到bb的最短路,加入优先队列中。然后考虑每次将一条最短路上的边删除,然后求出次短路并加入优先队列
VanishD
·
2018-06-13 19:55
【K短路】
bzoj1071 [
SCOI2007
]组队(枚举+单调队列)
这题我哪会呀。题解:portal#include#include#include#includeusingnamespacestd;#definelllonglong#defineinf0x3f3f3f3f#defineN5010inlinechargc(){staticcharbuf[1'9'){if(ch=='-')f=-1;ch=gc();}while(ch>='0'&&ch=s&&b[p2
Icefox_zhx
·
2018-04-06 16:15
bzoj
单调队列
暴力
[BZOJ1070][
SCOI2007
]修车(费用流)
题目:我是超链接题解:先说一下构成的图吧。把每个工人拆成N个点。记A[i,j]表示第i个工人修倒数第j辆车。每个车跟所有N*M个工人拆出的点连边。流量为1,费用为time[i,j]*k。源和每辆车连边,N*M个点和汇连边,流量都为1,费用同为0。为什么要这样建图呢?我们考虑这一个工人修这一辆车对后面带来的影响,举个例子,代价为3的车要是排在倒数第二去修的话,会对倒数第一的车造成3的代价,所以这辆车
wwyx2001
·
2018-03-27 16:41
网络流
省选
「BZOJ1070」[
SCOI2007
] 修车(费用流)
题目传送门题解原本想到的是星际战争一样二分最大流。然而这题与其不同的是每个人修的车有先后顺序,某一人修某一辆车会受到上一辆车的影响,也就是这一辆车是这个人第几个和修的对于总时间的贡献有很大的影响(倒数第一个人修只需要花一倍的时间,倒数第二个人修需要花两倍的时间……)。于是我们把每一种状态都拆成点,每一个人拆出n(车的数量)个点(共拆出n*m个点),每辆车都向这n*m和点连边,容量为1,,费用为ti
A_Comme_Amour
·
2018-03-21 08:15
网络流
BZOJ 1072: [
SCOI2007
]排列perm【DFS】
原文链接:http://www.cnblogs.com/XSamsara/p/9059437.html1072:[
SCOI2007
]排列permTimeLimit:10SecMemoryLimit:128MBDescription
aiweiluan5095
·
2018-03-17 19:00
[bzoj1070][
SCOI2007
]修车【费用流】
【题目链接】http://www.lydsy.com/JudgeOnline/problem.php?id=1070【题解】建图方式还是挺神的。我们不考虑每辆车之前的等待花费,而是考虑每辆车对之后的车的影响,因此,我们把每辆车插到最前面。费用为它即它后面的车数×它的时间它即它后面的车数×它的时间。因此,把每个技术人员拆成nn个点,每个点的流量限制为11,表示倒数第ii个修的车。每辆车也建一个点,向
VanishD
·
2018-03-06 19:00
【费用流】
bzoj1070 [
SCOI2007
]修车(费用流)
这题思路真是妙妙妙啊。拆点,把每个工人j拆成n个点,每个点表示工人j修他的倒数第k辆车。源点向所有车连边,容量为1,花费为0,所有n*m个工人向汇建边,容量为1,花费为0,车i向工人(j,k)连边,容量为1,花费为k*a[i][j]。表示让工人j倒数第k辆修i车,则修后面的k-1辆车时也要付出a[i][j]的等待时间,所以这一决策一共贡献了k*a[i][j]的等待时间。因为我们难以确定一个点被其他
Icefox_zhx
·
2017-12-18 13:03
bzoj
-----网络流-------
费用流
[BZOJ2879] [NOI2012] 美食节 (费用流)
和
SCOI2007
修车差不多,但带着修车的思维定势来做可能会gg……有N种菜品,每种要求Pi个。有M个厨师,每个厨师做每个菜的时间可能不同。要求最小化顾客的总等待时间。
Mollnn
·
2017-12-08 19:20
网络流
BZOJ1072(
SCOI2007
)[排列perm]--状压DP
【链接】bzoj1072【解题报告】状压DP。。定义f[i][j]表示状态为i,余数为j。然后就很好解了。这题有毒数据范围内爆搜也可以过。#include#includeusingnamespacestd;constintmaxn=12,maxm=1030,maxv=1005;intT,n,m,S,cnt,a[maxn],f[maxm][maxv],num[maxn],w[maxn];voidWo
Greninja_Wu
·
2017-12-03 11:45
BZOJ题解
状压DP
BZOJ题解
By
Greninja
部分常见刷题网站的题解
By
Greninja
bzoj 1072: [
SCOI2007
]排列perm 状压dp
Description给一个数字串s和正整数d,统计s有多少种不同的排列能被d整除(可以有前导0)。例如123434有90种排列能被2整除,其中末位为2的有30种,末位为4的有60种。Input输入第一行是一个整数T,表示测试数据的个数,以下每行一组s和d,中间用空格隔开。s保证只包含数字0,1,2,3,4,5,6,7,8,9.Output每个数据仅一行,表示能被d整除的排列的个数。感觉这道题真心
Rising_shit
·
2017-10-24 10:43
动态规划
BZOJ 1072 [
SCOI2007
]排列perm (状态压缩+dp+同余定理)
1072:[
SCOI2007
]排列permTimeLimit:10SecMemoryLimit:128MBSubmit:2537Solved:1583[Submit][Status][Discuss]Description
Ever_glow
·
2017-10-09 17:57
******DP******
******数论******
ACM的进阶之路
[最小费用最大流]BZOJ 1070 [
SCOI2007
]——修车
题目梗概要修n辆车,有m个修理员,给出每个修理员修每辆车的时间。求最短时间(一次只能修一辆车)。解题思路把每个修理员看成是在n个时段的修理员。如果要第k个时段用到第j个修理员修车i,那么对后面的影响是f[i][j]∗(n−k+1)建立超级汇连接n辆车,超级汇连接拆分后的修理员,修理员和车之间按以上关系相连。容量显然都是1,刷费用流就可以了。#include#include#definemaxn65
CHN_JZ
·
2017-09-29 19:07
BZOJ
最小费用最大流
CHNJZ的OI学习总结
BZOJ1066【
SCOI2007
】蜥蜴
【
SCOI2007
】蜥蜴Description在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃到边界外。
AZRAEL_DEATH
·
2017-09-18 23:12
网络流
bzoj1072[
SCOI2007
]排列perm
题目大意:给定n个数字,求这些数字组成的不重复的全排列中有多少整除d暴力:用next_permutation+set判重暴力判断(据说是可以过的)大常数选手又T掉了#include#include#include#include#include#include#definefo(i,a,b)for(inti=a;i=b;i--)usingnamespacestd;intT,d,vis[20];ty
Lifel
·
2017-09-12 20:26
动态规划
bzoj
状态压缩
bzoj 1066: [
SCOI2007
]蜥蜴(最大流)
1066:[
SCOI2007
]蜥蜴TimeLimit:1SecMemoryLimit:162MBSubmit:4116Solved:2081[Submit][Status][Discuss]Description
Jaihk662
·
2017-08-07 23:02
网络流
bzoj P1072 [
SCOI2007
]排列perm
传送门果然一遇到dp就瞬间失去了思考能力。。整没看出来这是状压dp,思路也很不错。我们可以发现s长度很短,所以很容易想到状压来枚举,我们枚举一些数字是否使用,用状压记录一下,也就是设f[s][i]表示状态为s的膜d为i的方案数,然后通过枚举下一位转移。怎么转移呢?我们枚举了模数所以新添的一位就可以直接加上枚举的模数再膜就是新添一位后的新膜数f[i^(1#include#includeusingna
Leo_Riddle
·
2017-07-31 00:48
dp
bzoj
dp
bzoj
bzoj 1070: [
SCOI2007
]修车(费用流)
1070:[
SCOI2007
]修车TimeLimit:1SecMemoryLimit:128MBSubmit:5818Solved:2467[Submit][Status][Discuss]Description
Jaihk662
·
2017-06-29 23:40
网络流
bzoj 1069: [
SCOI2007
]最大土地面积(旋转卡壳)
1069:[
SCOI2007
]最大土地面积TimeLimit:1SecMemoryLimit:128MBSubmit:3438Solved:1373[Submit][Status][Discuss]Description
Jaihk662
·
2017-06-29 01:39
数论
上一页
1
2
3
4
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他