自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

某司机的黑车

Don't forget.Always,somewhere,someone is fighting for you.As long as you remember her,you are not alone.

  • 博客(12)
  • 收藏
  • 关注

原创 初中OJ1599. 【GDKOI2004】香樟树

这道题有些难度,分享一下解题方法。 题目:https://jzoj.net/junior/#main/show/159960分:简单的DP。设F[i]表示到一直第i棵树时选出的树数量的最大值。 F[i]=max(F[j])   (gcd(a[i],a[j])>1)100分:用DP会超时。两个数不互质,就说明这两个数有相同的质因子。 而每棵树的叶子个数<=100000,而2*3*5*7*11*1

2017-02-11 21:52:40 567

原创 关于最长不下降子序列的优化

概念有长度为N的序列: A1 A2 …..An 求最长不下降子序列:Ai1,Ai2,,,,,Aik, 其中ai1<=ai2<=…..<=aik 求最长不下降子序列的长度O(N^2)最容易想到的方法,设F[i]表示以第i位为结尾时最长不下降子序列的长度。 F[i]=max(F[j])+1 (a[i]>=a[j])代码var a:array[1..100] of longint;

2017-02-11 21:06:24 795

原创 高中OJ3516. 【NOIP2013模拟11.6A组】摧毁巴士站

30分: 枚举要摧毁的车站,判断符不符合要求。 100分: 很显然,2^48会超时。 解决办法是有选择性的进行删点。基本的思路就是,一条长度不超过k的最短路径上的点,至少有一个是要被删掉的(至于删除哪个好,可以枚举尝试),删掉一个点后再重新求最短路,如果新求出的最短路径长度仍然不超过k,那么就在新的最短路径上再找出一个点删掉,然后再求最短路径……直到求出的最短路径长度超过k,那么就找到了一

2017-02-11 17:05:40 612

原创 高中OJ3517. 【NOIP2013模拟11.6B组】空间航行

这道题第一眼看上去有些难,但想想可以发现其实很简单。 假设题目要求的是一个二维平面图。 很明显走红线比走蓝线要更短。 所以我们可以求出两两星系间的距离,然后用最短路计算。 为了方便计算,可以把起点和终点设为半径为0的星系。 很显然,这两个星系的距离为s-r1-r2。最重要的一点:如何计算三维空间中两坐标间的长度? 为方便观看,省略了x轴 假设有这两个坐标要求距离,可以先忽略

2017-02-11 16:36:51 588

原创 高中OJ3515. 【NOIP2013模拟11.6B组】软件公司

首先想到DP。 设F[i,j]表示第一项工作做了i次,第二项工作做了j次时的最小时间。 枚举一重表示当前到那个人,两重表示当前状态,两重表示上一个人时的状态。 O(m^4n)。。。这样设肯定不行。 因为有两个状态+一个时间共三个量,所以可以想到通过二分时间,枚举一个量来算另一个量。 设F[i,j]表示一直到第i个人,第一项工作一共做了j次时第二项工作能做的最大次数。 设t表示二分的时间。

2017-02-11 16:03:20 355

原创 高中OJ3514. 【NOIP2013模拟11.6B组】最小比例

因为N<=15,所以可以直接暴力求解。 先枚举哪些点要选,之后打一个Prim(或克鲁斯卡尔)算结果。 要注意比率相同时,要取字典序更小的。 代码:var a:array[1..15] of longint; b:array[1..15,1..15] of longint; d:array[1..15] of longint; bz

2017-02-11 15:46:06 386

原创 2017.2.11【初中部 GDKOI】模拟赛B组题解

登顶*2

2017-02-11 15:39:24 325

原创 Tarjan算法(OJ3899)

TarJan算法概念 如果两个顶点可以相互通达,则称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大强连通子图,称为强连通分量(strongly connected components)。 下图中,子图{1,2,3,4}为一个强连通分量,因为顶点1,2,3,4两两可达。{5},{6}也分别是两个强连通分量。

2017-02-10 21:55:03 380

原创 高中OJ3504. 【NOIP2013模拟11.4B组】运算符(calc)

这道题有些难度。 先列个表来看一看。 很明显,这可以用递推实现。 但是由于答案过大,而且不好求约数,所以我们要把这个方法优化。 计算一个数约数个数公式: N=a1^p1*a2^p2*a3^p3…ax^px(a为其质因子) 约数个数:(p1+1)(p2+1)(p3+1)…(px+1) 通过这个公式可以知道,我们没有必要计算出最终结果是多少。只需要计算出最终的质因子个数的情况就可以了。

2017-02-10 21:14:01 367

原创 高中OJ3503. 【NOIP2013模拟11.4B组】粉刷(paint)

神奇的水法。。 因为要刷的次数最少,所以每一次刷掉的污点就要尽量最多。 每次刷掉最大污点数区域,这样过不去样例2。。 其实可以发现样例2全部竖着刷就可以最少。 所以再计算出全部横着刷和全部竖着刷的最少次数,在这三个答案中取一个最小值。。。 然后。。AC。。

2017-02-10 20:52:28 280

原创 高中OJ3502. 【NOIP2013模拟11.4B组】方格游戏(game)

这题不算很难。 通过找规律不难发现,设F[i]表示走i步时的方案数。 F[0]=1 F[1]=3 F[i]=F[i-1]*2+F[i-2] (i>1) 因为答案较大,所以要用高精度计算。

2017-02-10 20:45:09 421

原创 2017.2.10【初中部 GDKOI】模拟赛B组题解

AKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKingAKing

2017-02-10 20:41:21 325

空空如也

空空如也

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

TA关注的人

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