自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

转载 [HAOI2009]逆序对数列

求一个序列的逆序对数很自然的想到了树状数组,方便又快捷。根据题目的意思,它所说的各种排列是将第一个元素移至最后形成的排列,那么我们就从这里下手,对于第一个元素它后面比它小的就一定都会形成逆序对,这样对于当前的逆序对,在第一个元素移至最后时,它的逆序对数就要减少这个元素的值,因为此题数值是连续的所以可以直接减(且从数字大小0开始);而在移至最后时,大于这个元素的数值的数和它都会形成...

2019-09-14 16:17:00 157

转载 洛谷 P1230 智力大冲浪

解题思路: 利用结构体存储每一种游戏的时期和价值,按照时间从小到大(相同时期价值从大到小)排序然后依次扫描N种游戏并计时:如果当前的游戏完成时间 >= 计时器时间 ,则在计时器时间内能够完成该游戏,则直接统计该游戏,计时器++否则 在 "计时器" 时间上不能完成该游戏,则搜索计时器以前完成的游戏中是否存在价值最小的游戏可被当前该游戏替换如果存在,则将当前该游戏替换之前已完成...

2019-09-14 16:14:00 219

转载 NOIp提高组 2012 同余方程

同余:数论中的重要概念。给定一个正整数m,如果两个整数a和b满足(a-b)能够整除m,即(a-b)/m得到一个整数,那么就称整数a与b对模m同余,记作a≡b(mod m)。对模m同余是整数的一个等价关系。数学上同余,两个整数除以同一个整数,若得相同余数,则二整数同余。两个整数a、b,若它们除以整数m所得的余数相等,则称a与b对于模m同余或a同余于b模m记作 a≡b (mod m)...

2019-09-14 16:10:00 169

转载 NOIp提高组 2013 花匠

果然,直接DP不做特殊条件判定时,数据规模到一定程度时,必定超时了看了lrc(机房某大佬)的代码,if(dp[i][0]!=1&&dp[i][1]!=1) break; 依然不知是何居心,猜测可能是满足m>1不能同时满足那个条件吧.想不出接着进一步分析:受到以前有个题求序列连续和的启发,我们可以这样设计状态:令f[i][0]表示前i株花中的最后一株(不...

2019-09-05 12:54:00 124

转载 NOip 2012 摆花

这道题比较简单,我也就不多赘述,相信在座各位都能看我的代码就能题目弄懂,所以本题提供两种解法,动态规划没有学好的同学可以看看递推的写法。先上个动态规划的:#include<stdio.h>#include<stdlib.h>#include<string.h>// 摆花类动态规划的背包问题或整数划分/* ans[n][m]表...

2019-09-05 12:52:00 151

转载 NOip2001 一元三次方程

一元三次方程,二分法求解,根据题目要求根的范围【-100,100】考虑在什么样的区间内会有根,由于题目给出了所有的根都在-100到100之间,且根与根之间的差不小于1的限制条件,可知,在[-100,-99],[-99,-98],…[99,100],[100,100]这201个区间内,每个区间内至多只能存在一个根,这样除去区间[100,100],[-100,-100]外,其他区间...

2019-09-05 12:50:00 257

转载 洛谷个人首页

先送送你我们教练的一句话:Life is short,AC more!记得看完一定要去刷题,不然你就会和我一样成为全机房最弱的蒟蒻然而你加不了我QQ,抱歉,从不扩列想要出现结果却是团队友链‮Tham粉丝团‮约会大作战团队‮地球三体组织ETO官团‮卡塞尔学院‮ACG编程团队大佬友链 纪念墙2019-06-23 注册了洛谷2019-07...

2019-09-02 20:40:00 2096

转载 [USACO08OCT]打井Watering Hole

本题看似很难,实际上就是一道简单的图论题——只要你能想清楚图中有几个点。这个时候大部分人会喷我了,这多简单,不就是n个点吗?不,你错了,这个东西虽说有点坑,其实有n+1个点然后呢?这还需要然后吗,直接上代码不就好起来了吗?{斜眼笑}代码如下:#include <iostream> #include <stdio.h>#include <std...

2019-09-01 18:39:00 69

转载 洛谷P1429 平面最近点对(加强版)

核心是分治算法分别根据点的 x,y 值进行排序在 x 轴上划一道垂线, 将点均分成两半假设最近点对都在左/右部分, 递归计算左/右半部分的最短距离并返回较小值 dis假设最近点对分别在左右两个部分, 横跨中心的竖线. 中心线为中心,2*dis 为宽度画一个矩形, 横跨中心线的最近点对 candidate 都在这个矩形内.将这些点按照 y 值的大小加入到数组中. 遍历数组中...

2019-08-31 07:39:00 161

转载 [HAOI2011]向量

因为(a,b)与(-a,-b)完全相反,只能择其一。所以只有这几种运算(a,b)(a,-b)(b,a)(b,-a)(-a,-b)(-a,b)(-b,a)(b,a)[当然,题目中讲了。。。。]把他们组合起来,就只有这四种运算xi或yi +/-2*a;xi或yi +/-2*b;xi+a, yi+bxi+b, yi+a(xi,yi从0往上加,加到x,y就不存在-a,-b-b,...

2019-08-31 07:38:00 91

转载 [ZJOI2013]K大数查询

整体二分?二分答案c,求:solve(optl,optr,ansl,ansr);即work出操作在[ol,or],答案在[al,ar]?先搞出一个答案mid,再把opt扫一边。如果是1如果c>mid,就丢进树状数组里面。区间+1?三个树状数组的事情。然后把操作扔进右边QwQ如果c<=mid 就不管它然后把操作丢进左边。如果是2查询一下和。如果sum...

2019-08-31 07:37:00 90

转载 [JSOI2008]魔兽地图

对于每一个子树x,我们有f[x][i][k] 表示当前子树为x,有i个物品上交上一层合成(从而不计贡献但是计入成本),子树内一共投入了k元的最大收益一个子树的贡献有以下几个方面:1.其余儿子节点内部的贡献2.儿子节点上交的物品合成一部分当前节点物品,这一部分又有一部分被截留在当前节点,产生了贡献那么影响一个节点决策的因素有以下几个方面:1.投入2.合成几个3...

2019-08-30 21:25:00 59

转载 [HAOI2015]数组游戏

emmm这道题讲真是一道动态规划的题目,然而这道题你打暴力也有70分,但是如果你dp学得还不错的话这道题目的代码实现其实并不难,甚至说,比暴力还容易些。本题提供两种写法:暴力做法:#include<cstdio>#include<cstdlib>#include<cstring>#include<cmath>#include&...

2019-08-30 21:24:00 113

转载 [ZJOI2007]捉迷藏

这道题的话是一道动态点分治的板子题,然而蒟蒻仍然把代码写的巨长(而且还很丑),所以不得不在代码中加上分割线来帮助我自己阅读,好了,很多东西我都写在代码里了,直接上代码吧#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<cm...

2019-08-30 21:22:00 61

转载 [NOI2012]魔幻棋盘

这一道题的话就我而言可能更像数学里的分类讨论?就是讨论一下修改矩形的四个角在守护者的哪边就好了,只是我的代码可能有点麻烦,如果有神犇看到的话能给点建议吗,拜谢!然后很多东西我会放在代码里面,大佬们就看代码吧#include <iostream>#include <cstdio>#include <cstdlib>#include <a...

2019-08-30 21:20:00 159

转载 [NOI2007]生成树计数

题意一个n个点的树,点i只能向[i−k,i−1]内的点连边,求有标号生成树的个数然而做法,好吧我也不知道这是什么做法,所以有些注释大部分注释所有注释我都写在了代码里面,大佬们就自己去看看吧#include<bits/stdc++.h>using namespace std;#define ll long long#define RG register#defin...

2019-08-30 21:19:00 108

转载 NOIP 2014 联合权值

 题目大意: 有一棵树, 求距离为2的点权的乘积的和以及最大值。 边无权, 所以节点i, j只有两种关系可以有联合权值: 1. 爷爷与孙子( i( 或j) 的父节点的父节点是j( 或i) ) 2. 兄弟( i, j拥有共同的父节点) 对于30%的数据可用floyd, 枚举任意的有序点对<i,j>, 距离为2即有联合权值。 对于60%的数据就随便选一...

2019-08-30 21:17:00 72

转载 NOIP 2018 摆渡车

送上AC代码:#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <vector>#include <cmath>using namespace std;#define ll long...

2019-08-30 21:13:00 151

转载 USACO 骑马修栅栏 Riding the Fences

欧拉回路:对于一个无向图,如果它每个点的度都是偶数,那么它存在一条欧拉回路;如果有且仅有2个点的度为奇数,那么它存在一条欧拉路;如果超过2个点的度为奇数,那么它就不存在欧拉路了。题中说明至少有一个点,至少有一条欧拉回路。如果有2个度数为奇数的点,那么就只能也这两个点之一为起点,另一个为终点。 题目要求我们输出的是进行进制转换之后最小的,所以我们要以最小的点做起点。送上AC代码:#...

2019-08-30 21:12:00 111

转载 USACO 零的数列 Zero Sum

这道题还是搜索,将每个符号待人,3^9次方的时间还是可以接受的。#include<iostream>#include<cstdio>#include<cmath>#include<cstring>using namespace std;int s[22]={1,2,3,4,5,6,7,8,9},sign[22]={1};//数字...

2019-08-30 21:10:00 121

转载 USACO 循环数 Runaround Numbers

循环数是那些不包括0且没有重复数字的整数,并且游戏规则起点开始,经过每个数字一次(往后数数字游戏)后回到起点的就是循环数。如果你经过每一个数字一次(数数字游戏)后,没有回到起点, 你的数字不是一个循环数。因此,很显然循环数必定在[M,987654321]范围内送上AC代码#include <cstdio>#include <cstdlib>#inclu...

2019-08-30 21:08:00 241

转载 [HNOI2006]鬼谷子的钱袋

用二进制表示是最少的把m变成二进制,那么用m的二进制的位数那么多钱袋就可以了比如m=11010那么多个钱袋放1,10,100,1000,10000,最多可以达到11111所以这道题就是求m的二进制位数实际上本题就是“多重背包的二进制优化”,用二进制拆分就行,然而题中说两数除了1之外都不能相同,比如9,拆分后就是1 2 4 2, 不符合,对拆分序列进行排序,在拆分的时候遇到a[i...

2019-08-30 21:06:00 64

转载 [JSOI2010]部落划分

这道题提供两种解题思路解题思路1:我们枚举计算点两两之间的距离。然后我们从小到大考虑每一个距离。如果我们想让部落之间的最短距离最大,就要尽可能让当前的边连接的两个点在同一个部落中。因此我们记录剩余的部落数量,每次把最短的,连接两个部落的边连接的两个部落合并成一个,直到剩余部落数量为k。然后剩下的边权最小的连接两个部落的边长就是答案了。就是类似于Kruskal的过程。AC代...

2019-08-30 21:05:00 133

转载 HNOI2003 激光炸弹

水题一枚,题目意思是给出n个点,每个点有一个价值,问一个边长为r的点最大能获得多大价值。维护一个二维前缀和即可。如果我们要求红色部分的和,是不是用整个有颜色部分的正方形的面积S - 黄色 - 绿色 - 蓝色那么怎么利用前缀和的知识来求呢。二维中,前缀和代表某点相对于矩阵左上角的矩形区域的面积。所以可以推出ans = map[5][5]-map[5][5-2-1]-...

2019-08-30 21:00:00 132

转载 ZJOI2008 泡泡堂

贪心思路:0x01.你这边最弱>对面最弱,那就打0x02.若1不成立,那么你这边最强>对面最强,那也打0x03.若1.2均不成立,用“田忌赛马”,最弱的去和最强的打,保证最小损失(记得判断等于的情况)0x04.注意:两方分数和一定为2n,所以求最好时直接按上面算并输出,最差则使求对方的最好情况,然后用2n减去就可以了。AC代码如下:#inc...

2019-08-30 20:58:00 105

转载 NOIP 2008 传纸条

这道题目提供三维优化的题解和没有优化的题解不多说,先看代码 1 /* 2 首先如果只有一个人,状态很好转移,用f[i][j]表示在位置(i,j)的最优值,那么f[i][j]=max(f[i-1][j],f[i][j-1)+a[i][j]; 3 现在又两个人,我们用f[i][j][k][t]表示位置(i,j)(k,t)的最优值,虽然两个人一个是左上角开始...

2019-08-30 20:50:00 104

转载 NOIP 2004 花生采摘

这题看起来很复杂,其实很水,注意别看错题目造成不必要的WA废话不多说,上代码 1 #include<cstdio> 2 #include<cstdlib> 3 #include<iostream> 4 using namespace std; 5 /* 6 你先找出花生最多的植株,去采摘它的花生;然后再找出剩下的...

2019-08-30 20:47:00 262

转载 NOI导刊2010提高(05) 小明搬家

首先,我们来分析一下问题。问题分析:不要去关心某个人。本题提供两种解法,本质就是个数学题,AK了IMO的大佬就跳过吧“当一个人向上走,另一人向下走而在楼道里相遇时,向上走的人将手中的箱子交给另一人,两人同时反向。”,可以看做仅仅是两人正常走过。如此不难看出2n-2步后,所有人会回到自己原来的位置,同时有k个箱子被放在n层,又有k个箱子在1层被拿走。所以前 (m div k...

2019-08-30 20:45:00 123

转载 NOIP 2011 铺地毯

有些题解的方法把这道题搞得有些复杂。我们可以简化一下简单来说就是投机取巧。因为,这道题就是要看指定的地方有没有覆盖地毯,如过有的话就输出,没有的话就照题干输出-1就好了。总而言之就是看我下面的代码吧 1 #include<cstdio> 2 #include<cstdlib> 3 using namespace std; 4 int mai...

2019-08-30 20:42:00 181

转载 NOIP 2016 明明的随机数

其实这道题挺水的,根本没必要用STL,用循环就够了我们也就废话不多说,直接上代码 1 #include<iostream> //就是C++的基本库 2 #include<cstring>//这个不打NOIp会爆0 3 using namespace std; 4 int n,k,i,a[1001],x; 5 int main() 6...

2019-08-30 20:39:00 126

转载 洛谷背景更改

虽然别人的blog里面也有类似的文章,但有一个图床的改法是用不了的,所以来发一个简单易懂的修改方法。(目前来看是不会出现网页崩坏之类的问题的)版主用的是firefox,所以就只会firefox,如果需要其他的可以去网上找万能的某度。先放张效果图第一步 安装Stylus具体做法如下:首先,打开你的Firefox(这不废话吗),点击右上角的三道杠。然后...

2019-08-30 20:32:00 2784

空空如也

空空如也

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

TA关注的人

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