题解
文章平均质量分 92
Sprjdfn
这个作者很懒,什么都没留下…
展开
-
【计算几何】POJ 1410
题目大意: 给定一个矩形和一个线段,问矩形与线段是否存在公共点(矩形包括四条边和四条边所围成的部分)。一个矩形与一个线段相交当且仅当: 1.线段的一个端点在矩形内或矩形上 2.线段与矩形的某条边相交 两部分分别判断一下就可以了。附上AC代码:#include <cstdio>#include <cstdlib>#include <cmath>#include <cstring>#in原创 2015-05-19 19:01:00 · 400 阅读 · 0 评论 -
BZOJ 1502 NOI 2005 月下柠檬树
题目大意给定一些圆和梯形,求它们面积的并解答直接用辛普森公式积分 ∫baf(x)×dx≈b−a6[f(a)+f(a+b2)+f(b)]\int_a^bf(x)\times dx \approx {b-a\over6}[f(a)+f({a+b\over2})+f(b)] 由于辛普森公式对于4次及以上的函数误差比较大,所以可以二分,当满足 |Simpson(a,b)−Simpson(a,a+b2)原创 2015-08-10 17:13:50 · 414 阅读 · 0 评论 -
CodeForces 305D Olya and Graph
题目大意给定一条单向链,上面有一些和链方向一致的边,每条边(包括加的)长度都是1,求有多少种方式加边可以使每一对(i,j)(i,j)满足iji有:dis(i,j)=j−idis(i, j) = j-i或dis(i,j)=j−i−kdis(i, j) = j-i-k。解答由题目易知,所有边的长度必须是k+1k+1的并且所有边的起点必须在一个k+1k+1的连续区间中,所以,所有不满足上述条原创 2015-11-21 20:32:44 · 580 阅读 · 0 评论 -
CodeForces 311E Biologist
题目大意给定n只狗,和m个人,每只狗变性需要花费viv_i的代价,每个人会对一部分狗有一个期望性别(都为雄性或都为雌性),如果性别能够一一对上,就会获得wiw_i的利润,如果不能对上并且这个人比较重要,会减少gg的获利。求能获得的最大利润。解答很容易能看出这是一个最小割模型,我们先把所有的获利相加得到sumsum,之后求最小消耗即可。 我们把每只狗变为雌性的代价做为边权连一条从ss出来的边,同样把原创 2015-11-17 20:52:23 · 917 阅读 · 0 评论 -
CodeForces 241F Race
题目大意给定N*M个方格状的街区,其中包括:若干建筑物,双向直线的道路以及交叉路口组成了TOC。每个建筑物:占恰好的一个街区。每条道路:所有道路的宽度都为1个街区,并且道路都是水平的或竖直的。每个交叉路口:占一个街区,位于道路的交汇处。保证没有道路和交叉路口是相同的。 给定通过每个街区的时间,给定每个交叉路口的代号(a-z)(保证没有重复)。给定起点和终点,还有路径上所有交叉路口的代号,原创 2015-11-17 20:08:11 · 517 阅读 · 0 评论 -
CodeForces 293B Distinct Paths
题目大意给定一个n*m的矩阵,每个格子内允许填1−k(k<10)1-k(k<10),问有多少种填数方案可以让每一条从左上到右下的路径不经过数字相同的点解答搜索剪枝,暴搜每个点,首先用¬(F[x−1][y]∨F[x][y−1])\lnot(F[x-1][y] \lor F[x][y-1])得到所有可以用的数码,用二进制记每个数是否用过,每一次用i∧(−i)i\land (-i)得到小的一个可以用的数,原创 2015-12-05 19:42:05 · 787 阅读 · 0 评论 -
北京集训队 2016 Day4 alarm
原题目问题描述 小H很喜欢玩电子游戏。在通关了“超级跳”以后,他又开始玩别的游戏。 这次,小H对一个经营策略类游戏产生了兴趣。 游戏中,小H控制一个平面营地,在营地上进行建设和发展,还要防备来自敌方的打击。尤其是要防备敌方的空袭。营地可以抽象成一个无向图。图中的有些节点是小H建造的防空避难所,其他的则是住房、农田、矿场等种种建筑,节点之间通过一些道路连接。每原创 2016-04-05 21:22:15 · 600 阅读 · 0 评论 -
2013BJOI Day1 第一题 迷宫
原题目 问题描述 假设你在玩一个很无聊的迷宫游戏,在一个很大的迷宫里面(迷宫可以用一个无向图来表示),你随机出生在一个节点,你的目的是走到迷宫唯一的出口,每一时刻你可以选择从当前节点走到一个相邻的节点,也可以考虑随机传送到迷宫的某一地点。 你想要知道,在最优的策略下,平均需要多长时间能到达出口。 输入格式 第一行,图的节点数N和图的边数M原创 2016-04-06 22:06:12 · 924 阅读 · 0 评论 -
北京集训队2016 Day4 超级跳
原题目问题描述 小H最近迷上了一款叫做“超级跳”的休闲游戏。 游戏中,有n层云朵。你控制一个小人,出生在第n层云朵上,目标是不断向下跳,最终抵达地面。为了方便,这里对游戏做一些简化。 如果建立平面坐标系,可以将每层云朵抽象成一条平行于x轴的线段。第i层云朵可以抽象成一条纵坐标等于i,左右端点的横坐标分别是li和ri的线段。 小人可以抽象成一个点,出生点坐标是(s, n),保原创 2016-04-06 22:21:28 · 1357 阅读 · 0 评论 -
2013BJOI Day1 第二题 彩色球
原题目问题描述 有N个球,序号分别为1到N,每个球有一个颜色,颜色的序号为1到M。 你需要处理一类询问:给定一个区间左右边界(包含),求这个区间内有多少种不同颜色的球。输入格式 第一行,球的个数N和颜色的范围M 接下来N行,每行一个数,第i行的数表示第i个球的颜色。 接下来一行,为询问的个数Q 接下来Q行,每行两个数,为区间的左右边界L和R,L<=R。 输原创 2016-04-07 21:16:39 · 675 阅读 · 0 评论 -
ACM/ICPC World Finals 2012 B Curvy Little Bottles
题目大意有一个瓶子,是由一条曲线绕着xx轴旋转得到的。瓶底的直线为x=Xlowx=Xlow瓶口的直线为x=Xhighx=Xhigh,给定曲线的函数,Xlow,Xhigh,inc曲线的函数,Xlow,Xhigh,inc,求瓶子的体积并每隔incinc体积画一条等体积线。解答V=∫XhighXlowf(x)2×dx≈Xhigh−Xlow6[f(Xlow)2+4f(Xlow+Xhigh2)2+f(Xhig原创 2015-07-29 16:17:39 · 511 阅读 · 0 评论 -
ACM/ICPC World Finals 2010 D Castles
题目大意给定一棵无根树,树的每一个节点上有一个城市,现在要从任意一个城市开始攻打,攻下每个城市需要aia_i个士兵,会死去mim_i个士兵,之后要留下hih_i个士兵。每一条路只能一来一去,攻打一个城市必须要占领与它相邻的一个城市,求最少需要多少士兵才可以攻下所有的城市。解答很容易就可以想到,应该先攻打pi=max{ai−mi−hi,mi+hi}p_i=max\{a_i-m_i-h_i,m_i+h_原创 2015-07-28 21:09:40 · 594 阅读 · 0 评论 -
ACM/ICPC World Finals 2013 F Low Power
题目大意有n个机器,每个机器有两块芯片,每块芯片上有k块电池,定义芯片的能量为其上k块电池的最小值,求每个机器上两块芯片的能量差的最大值的最小值解答很容易发现,两块芯片上电池的最小值是两个大小关系相邻的值为最优策略,然后二分答案求最小值即可。代码:#include <cstdio>#include <cstdlib>#include <cmath>#include <cstring>#inc原创 2015-06-15 12:05:36 · 778 阅读 · 0 评论 -
【计算几何】POJ 1113
题目链接: http://poj.org/problem?id=1113原题:WallTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 31393 Accepted: 10609 DescriptionOnce upon a time there was a greedy King who ordered his chie原创 2015-05-22 17:20:49 · 442 阅读 · 0 评论 -
【计算几何】POJ 2653
题目大意: 给定n条线段,按输入依次编号为1-n,求哪些线段不与任何编号大于这条线段相交,并输出它们的编号。这道题就是套一个计算几何模板,然后每条线段判断是否与之后的线段相交,然后输出就可以了。代码如下:#include <cstdio>#include <cstdlib>#include <cmath>#include <cstring>#include <algorithm>using原创 2015-05-19 17:06:19 · 298 阅读 · 0 评论 -
【计算几何】POJ 2318 & POJ 2398
这道题的大意是,给定一个矩形,然后给你n条互不相交的从矩形上边的边连到下面的边的直线,将这个矩形分成n+1部分,现在有m个点,问你每个区域各有多少个点。于是这是道水到爆的计算几何基础题,只要把这些边排个序,然后用叉乘判断是否在这个区域里就可以了。附上我的AC代码:#include <cstdio>#include <cstdlib>#include <cmath>#include <cstri原创 2015-05-17 20:50:50 · 362 阅读 · 0 评论 -
【线段树】Crash的数字表格
题目链接: http://www.tsinsen.com/A1233题目大意: 给定一棵树,每个结点有一个权值,你要支持两个操作: 1.改变某个结点的权值 2.求一个从u开始的路径使路径上的每个点的权值之和最大,输出这个权值和。这道题目给了3种不同的数据: 第一种是小数据,直接暴力搜索就可以了。 第二种是在链上,所以我们求出到每个点的前缀和,然后对前缀和维护最大值和最小值的线段树,然后每原创 2015-05-20 21:15:34 · 361 阅读 · 0 评论 -
【计算几何】POJ 1269
计算几何模板题,只要注意精度,判断平行和重合是不要用==0,要写一个dcmp,当绝对值小于等于1e-6时就可以判断是0了。#include <cstdio>#include <cstdlib>#include <cstring>#include <cmath>#include <algorithm>using namespace std;const double eps = 1e-6;cla原创 2015-05-18 20:48:22 · 302 阅读 · 0 评论 -
【网络流】复杂的大门
题目大意: 给定一些点,每个点要求必须仅经过多少次,给出一些之间没有交叉的边,每次可以任选一个点开始走,问至少要走多少次。看上去这道题有些像费用流,但好像用费用流不能解,然后就开始转换题意,发现可以把坐公交车看做重新开始,问一共要重新开始多少回。 由于站台经过的次数有限制,所以就可以按有上下界的最小流做就可以了,也就是供给需求构造可行流,然后倒着做最大流,在纸上画一下,发现有一个明显的可行流就是原创 2015-05-21 13:57:37 · 622 阅读 · 0 评论 -
ACM/ICPC World Finals 2013 C Surely You Congest
题目大意给定一个图,给你n个人的起点,不允许两个人同时通过同一条边的同一个方向原创 2015-06-14 19:06:17 · 453 阅读 · 0 评论 -
ACM/ICPC World Finals 2013 A Self-Assembly
题目大意给定一些分子,给定这些分子的四个方向(上下左右)的样式,只有相同样式的对应接口才能结合,问你用这些分子是否可以构成一个无穷大的结构体。解法实际上这道题就是找是否有环就可以了,如果有环,那么就一定可以无限延续下去。所以我们先建立A+~Z-这些点,然后我们建立每个分子的每条边所对应的点到另一条不同的边的对立的点的边。举个例子: 00B+D+A-这个分子,我们要建一下的边: B+ ->原创 2015-06-14 18:27:19 · 622 阅读 · 0 评论 -
ACM/ICPC World Finals 2013 D Factors
题目大意定义f(k)=k的素因子排列数f(k)=k的素因子排列数,给定n求f(k)=nf(k)=n的最小的k解答首先将k分解质因数: k=∏i=1mpaiik=\prod_{i=1}^m p_i^{a_i} 很容易就可以得到: f(k)=(∑mi=1ai)!∑mi=1ai!f(k)={(\sum_{i=1}^m a_i)!\over \sum_{i=1}^m a_i!} 对于一个新加的素数:原创 2015-06-14 20:36:53 · 826 阅读 · 0 评论 -
BZOJ 1502 NOI 2005 月下柠檬树
题目大意给定一些圆和梯形,求它们面积的并解答直接用辛普森公式积分 ∫baf(x)×dx≈b−a6[f(a)+f(a+b2)+f(b)]\int_a^bf(x)\times dx \approx {b-a\over6}[f(a)+f({a+b\over2})+f(b)] 由于辛普森公式参考代码#include #include #include #include原创 2016-05-21 10:52:30 · 521 阅读 · 0 评论