自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ACMer'

From Under To Top ,Back To Front ,Wrong To Accept

  • 博客(81)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 【POJ 1584】 A Round Peg in a Ground Hole (判凸包+判圆在凸包内)

【POJ 1584】 A Round Peg in a Ground Hole (判凸包+判圆在凸包内)这题题面是一大坑。。长长的 明显是给我这种英语渣准备的。。。大体意思是给出一个多边形的点 按顺时针或逆时针给出 判断是否为凸包 同时给出一个圆(圆心坐标+半径) 问这个圆在不在多边形内首先顺逆时针不确定 我的做法是输入时先判断顺时针还是逆时针输入 然后统统变成逆时针来走 就是根据两种

2015-08-28 01:01:46 1113

原创 【POJ 1408】 Fishnet (叉积求面积)

【POJ 1408】 Fishnet (叉积求面积)一个1*1㎡的池塘 有2*n条线代表渔网 问这些网中围出来的最大面积 一个有效面积是相邻两行和相邻两列中间夹的四边形Input为n 后面跟着四行 每行n个浮点数 每一行分别代表a,b,c,d  如图 并且保证a(i) > a(i-1) b(i) > b(i-1) c(i) > c(i-1) d(i) > d(i-1)n(n

2015-08-27 20:02:59 1526

原创 【POJ 2187】 Beauty Contest (凸包-Graham扫描算法)

【POJ 2187】 Beauty Contest (凸包-Graham扫描算法)找平面最远点对 数据很大 用暴力会T..我感觉……扫描出个凸包 然后枚举凸包上的点即可 没坑 int也可过 注意重边跟共线就行 代码下附赠几组数据代码如下:#include #include #include #include #include #include #include

2015-08-27 16:45:36 1007

原创 【POJ 1113】 Wall (凸包)

【POJ 1113】 Wall给n个点 连出一个凸包 然后在凸包外筑墙 要求墙与凸包每一处的距离都>=l 问需要建的最短的墙长乍一看挺难 画画图就能看出来 凸包外建距离l的墙 其实就是在凸包每个顶点处 以顶点为圆心 做半径为l的弧 做到两侧半径与点的两边平行即可 然后把这些弧都用直线衔接 就是最短墙长这样还不好求 呢把弧拿出来呢 其实就相当于把整个凸包作为一个点 以该点为圆心

2015-08-27 16:39:19 822

原创 【HDOJ 4686】 Arc of Dream (矩阵快速幂)

【HDOJ 4686】 Arc of Dream (矩阵快速幂)两个公式a(i) = a(i-1)*Ax+Ay b(i) = b(i-1)*Bx+By求0~(n-1) 的a(i)*b(i)初始矩阵为                                       求幂矩阵为a0

2015-08-26 23:36:13 1043

原创 【HDOJ 1021】 Fibonacci Again (矩阵快速幂(裸))

【HDOJ 1021】 Fibonacci Again没错 我又来发水题了。。。感觉做矩快会上瘾。。。这种原本绝壁超时的东西突然秒秒钟出来。。。这感觉。。。爽 上代码#include #include #include using namespace std;typedef struct Matrix Matrix;struct Matrix{ int

2015-08-26 19:46:07 791

原创 【HDOJ 1005】 Number Sequence (裸矩阵快速幂)

【HDOJ 1005】 Number Sequence原谅我贴个水题。。。攒了一年的'恩怨'终于了解了 b( ̄▽ ̄)d去年就接触过矩阵快速幂 线代太弱  看他们代码没参悟透。。可能真是悟性太差了。。然后一直以为矩阵快速幂是很叼的东西(不过确实很叼) 太高深 再没敢碰。。有毒啊…………知道最近比赛(VJ)出现矩阵快速幂的频率太高了 今下午又来一道 金巨巨看我万般费解 上来一张纸 一支

2015-08-26 19:27:17 1012

原创 【HDOJ 4277】 USACO ORZ (暴搜+剪枝+去重)

【HDOJ 4277】 USACO ORZ给n个木棍 让用所有木棍组成三角形 木棍必须全部用上 可以用多个木棍构一边 问能组成多少不同的三角形 有一边长度不等的两个三角形视为不同方案枚举木棍 每个木棍可以加在三边 这样不断搜 结果需要不重复 所以每次都让传入的参数从大到小 用一个结构体和set去重 深搜的时候也要剪枝否则超时剪枝方案就是之前出现的状态再次出现剪掉也是数据水

2015-08-26 08:39:53 797

原创 【HDOJ 4268】 Alice and Bob (排序+二分)

【HDOJ 4268】 Alice and BobAB各有一组 每张牌有各自的长和宽 如果一张牌长宽都>=另一张牌 这张牌就可以覆盖另一张 问A中最多多少张牌覆盖B中的牌 每张牌都一一对应 一张只能覆盖一张也只能被一张覆盖我们先选择一种排序方式 我先将B按长由大到小第二层按宽由大到小排序 A也同样 枚举B中卡牌 每枚举一个就把A中长>=该卡牌的卡牌的宽加入到一个可重容器multiset中

2015-08-26 08:32:34 565

原创 【HDOJ 4272】 LianLianKan (vector深搜+剪枝)

【HDOJ 4272】 LianLianKan不造正规做法 不过好歹是按题意做的(读懂题有时候也不是好事TOT 据说好多随意连水果去的。。。经过5小时推出来了……整场就做了这么一道OOOOOOOOOOOTZ 题意要求只能连与他相距小于6的即最远连到下面除顶部本身外的五个中的一个 有可以发现如果有连续的连其中任意一个效果都是一样的这样搜索策略就是看下面五个中不连续的然后挨个接着搜。。

2015-08-26 08:17:31 869

原创 【POJ 1039】 Pipe (叉积判方向+叉积求交)

【POJ 1039】 Pipe一个水管由多个拐点组成 给出每个拐点的上点 管宽1 即管上下两点分别为(x,y) (x,y-1)问从管口射入光线能到达的最远的x 光线不可折射反射分析可知 光线射得最远 一定会夹在上下两个拐点之间 画画图就明白了 并且一定是一上一下这样枚举每两个拐点 每两个可以组成(x1-x2,(y1-1)-y2) (x1-x2,y1-(y2-1))这样两个上下向量

2015-08-25 09:38:05 989

原创 【POJ 2031】 Building a Space Station (三维坐标求距离+最小生成树)

【POJ 2031】 Building a Space Stationn个空间球 可能存在包含或者覆盖的状况 想要让所有球都联通 每个球有坐标x,y,z和半径 问还需要搭建最少多长的路存储所有需要搭建的路 跑一遍最小生成树即可 注意原本就重叠的球距离0直接加入代码如下:#include #include #include #include #include #de

2015-08-24 17:47:30 1257

原创 【POJ 1265】 Area (Pick定理+叉积求多边形面积)

【POJ 1265】 Area从原点开始走 输入的是每次行走x y移动的长度 可正可负 最终会走会起点问围成的多边形内部点数 边上点数 和面积用到三个定理:1.网格中两格点间经过的格点数+1 = 两点横向和纵向距离的最大公约数2.网格中多边形面积s 边上格点n 内部格点x 则有公式 s = x+n/2-13.网格中多边形面积等于从一点逆时针走一圈 每相邻两个点分别与

2015-08-24 13:22:39 1192

原创 【POJ 3122】 Pie (二分+贪心)

【POJ 3122】 Pie分f个派给n+1(n个朋友和自己)个人 要求每个人分同样面积 但不能分到超过一个派 即最多把一整个派给某个人 问能平均分的最大面积二分平均面积 下界0 上界最大的一份派的面积 判断条件从大派开始分(保证尽量满足)如果能分出n+1份 这种分法就合适 下界上移 最后输出下界即可 注意二分判断上下界用esp 否则超时从大到小分派是一种贪心策略 太小的派可以扔掉 但

2015-08-24 09:15:49 1124

原创 【POJ 1905】 Expanding Rods (二分)

【POJ 1905】 Expanding Rods公式+二分题意是一根棍 恰好夹在两面墙之间 在n温度下膨胀成(1+n*c)*l长度 问此时中的距原中点距离膨胀后变成一段弧 也就是圆的一部分 原来的棍子就变成了圆的截线。。。这不是高中很常见的图么。。。不会在电脑作图。。大家手画一下就知道了这样做几条辅助线 从圆心做截线的垂线延长到弧 设棍子原长L 膨胀后(弧)长s 膨胀后中点与

2015-08-23 23:54:46 1223

原创 【POJ 3258】 River Hopscotch (二分)

【POJ 3258】 River Hopscotch一窝牛要过河 河宽l 河中有n个许多石块 每个对应与牛所在的岸边有个距离 现在想要去掉m个石块后最小距离最大 问怎么去二分最小值最大化代码如下:#include #include #include using namespace std;int p[50002];int n,m;bool can(int

2015-08-23 20:14:13 920

原创 【POJ 3273】 Monthly Expense (二分)

【POJ 3273】 Monthly Expense (二分)一个农民有块地 他列了个计划表 每天要花多少钱管理 但他想用m个月来管理 就想把这个计划表分割成m个月来完成 想知道每个月最少花费多少 每个月的花费是这个月的花费加和 必须按计划表的顺序来所有天中花费中最大花费作为下界 所有花费加和作为上界 二分上下界间的花费可能 找出最少每月花费即可代码如下:#include

2015-08-23 18:52:09 919

原创 【CF 453A】 Little Pony and Expected Maximum (最大期望)

【CF 453A】 Little Pony and Expected Maximum (最大期望)推一下可以发现掷出i的概率为 (i/m)^n-((i-1)/m)^n这样递推求值即可 注意直接先求比再求幂 分子分母分开的话会爆 说了误差不超1e-4即可 不必担心精度代码如下:#include #include #include #include #define

2015-08-23 00:02:09 790

原创 【HDOJ 3729】 I'm Telling the Truth (二分图最大匹配)

【HDOJ 3729】 I'm Telling the Truth (二分图最大匹配)每个人对应一个区间 将该人编号与区间内编号挨个连起来 要让能匹配的人越多越好 即为求最大匹配 要注意求字典序最大的情况 倒序匹配即可代码如下:#include #include #include using namespace std;typedef struct Edge{

2015-08-22 23:57:44 808

原创 【HDOJ 5056】 Boring count (排列组合)

【HDOJ 5056】 Boring count (排列组合)我的做法是两个指针 一个指向最后匹配好的字符的后一位 一个沿字符串遍历 开个数组标记每个字母出现过的次数 当遍历到某个字母 出现次数>k时 从j往后找j后面第一次出现该字符的位置 可知从此位置往前的字符都无法遍历到当前的i 因此把此位置及之前与i之前能组成的子串统计一下 这样不断的遍历 最后输出即为答案代码如下:#i

2015-08-22 23:53:57 674

原创 【HDOJ 5419】 Victor and Toys (排列组合)

【HDOJ 5419】 Victor and Toysn个玩具 m个区间每个玩具有一个beauty值 问任选三个区间 三区间的MINleft~MAXright的和的期望值预处理一个数组 存放每个位置被几个区间囊括 这样该位置被选择的概率为c(x,3)/c(m,3)若beauty数组为w 预处理数组a期望值即为 w[i]*c(a[i],3)/c(m,3) i∈[1,n]注意防

2015-08-22 23:14:36 935

原创 【HDOJ 5418】 Victor and World (状压dp)

【HDOJ 5418】 Victor and World (状压dp)旅行商问题 不要害怕 只有16个点 所以用状压即可 floyd初始化各点最小距离 然后枚举状态 dp该状态下包含的点 dp最短距离最后dp一下每个点在全1状态下的最短距离 即为绕一圈回来后的最短距离代码如下:#include #include #include #include using na

2015-08-22 22:37:59 895

原创 【CF 450A】 Jzzhu and Children

【CF 450A】 Jzzhu and Children发糖 n个小盆(屁)友(孩) 站好队 第i个人想要ai颗糖 但坏叔蜀一个人一次只发m个糖 还想要就要到队尾排队 领够糖的就走开 问最后走的小朋友是谁队列比较好想 我用了除法 第i个小朋友要领(ai+m-1)/m次 领取次数最多并且初始位置最靠后的肯定最后走代码如下:#include #include using

2015-08-22 18:56:07 700

原创 【CF 484B】 Maximum Value (mod)

【CF 484B】 Maximum Value一组数 从中取两个数大的对小的取余 问最大的余数是多少初始化1~max的数组 数组里存序列中小于该数组当前下标的最大的数找的时候枚举序列中的数的2、3、4...倍 对应的数组中以2、3、4*x为下标的数对x取余后得到的最大的数就是以x为模序列中的数取余后的MAX每个数这么遍历一遍即可代码如下:#include #inc

2015-08-22 18:48:55 1091

原创 【CF 514D】 R2D2 and Droid Army (线段树、RMQ)

【CF 514D】 R2D2 and Droid Armyn个机器人 m把枪 每个怪物对应每把枪都有一定的血量 m个血槽都空机器人才挂掉m把枪一共有k发子弹 问怎么打可以杀死最多的连续的机器人 子弹可以剩余1~n遍历 统计当前区间最大值 如果m血槽最大值的和>k时 左边界右移一位 重新统计输出最长序列的打法即可这题用RMQ也可以 代码量能少点 他们还有加二分优化的 二分区间长度

2015-08-22 18:39:24 1273

原创 【FZU 2184】 逆序数还原

【FZU 2184】 逆序数还原已知数列中i位置的数所含的逆序对数 数列由1~n组成 输出序列n代码如下:#include #include #include using namespace std;bool vis[1001];int main(){ int n,x,cnt,b,i; while(~scanf("%d",&n))

2015-08-22 16:44:35 868

原创 【FZU 2177】 ytaaa (dp)

【FZU 2177】 ytaaan个炸药 可以把连续的炸药绑成炸药包 炸药包的威力是绑住的炸药里(最大威力-最小威力)^2dp数组存储绑完i前所有炸药后的最大威力把威力存入f数组转移方程为 dp[i] = max(dp[j] + (Max(f[k])-Min(f[k]))^2) (i:1->n j:1->i-1 k:j+1->i)代码如下:#include #in

2015-08-22 16:31:47 1073

原创 【POJ 1845】 Sumdiv (整数唯分+约数和公式+二分等比数列前n项和+同余)

【POJ 1845】 Sumdiv用的东西挺全 最主要通过这个题学了约数和公式跟二分求等比数列前n项和 还有一种小优化的整数拆分  整数的唯一分解定理:      任意正整数都有且只有一种方式写出其素因子的乘积表达式。      A=(p1^k1)*(p2^k2)*(p3^k3)*....*(pn^kn)   其中pi均为素数约数和公式:

2015-08-21 22:17:34 1304

原创 【HDOJ 5407】 CRB and Candies (大犇推导

【HDOJ 5407】 CRB and Candies赛后看这题题解只有满眼的迷茫………………g(N) = LCM(C(N,0),C(N,1),...,C(N,N)) f(n)\ =\ LCM(1, 2, ..., n)f(n) = LCM(1,2,...,n), the fact g(n)\ =\ f(n+1) / (n+1)g(n) = f(n+1)/(n+

2015-08-21 16:30:47 1012

原创 【POJ 2115】 C Looooops (扩展欧几里德)

【POJ 2115】 C Looooops输入四个数a b c k一个循环for(a;;a += c) if(a == b) break;a在k进制内循环 即0 可以得到一个方程 满足题意的话 a+c*x = b(mod 2^k)即 c*x = b(mod 2^k) + a = (b+a)(mod 2^k) 同余就变成求c跟2^k的逆元了 跑一遍扩欧即可 注意要变换

2015-08-21 14:02:47 823

原创 【HDOJ 1005】 CRB and His Birthday

【HDOJ 1005】 CRB and His Birthday背包 商场卖东西 没件物品有对应的价值 同时由于超市老板跟你是好绩优。。。每买一件物品给你a个糖果 同时如果购买某物品 会给对应的b种糖果 即买x个i 可以得到ai*x+bi个糖果 问怎么能得到最多糖果开始是想开个bool标记每个状态某糖果买每买 还有在该状态是否第一次买某种糖果 写着写着写不好了……

2015-08-20 19:11:52 982

原创 【HDOJ 1009】 CRB and String

【HDOJ 1009】 CRB and String每组两个串s t 只由小写字母组成 问从s能不能变成t改变的操作为选一个字符 在后面加上一个与所选字符不同的字符这种操作可以做无数次 问能不能达t首先s能到t的首要条件是 对于任意字母 s中出现的次数小于等于t中出现的次数其次仔细想想可以发现 满足上一条件后 只有存在连续的字符才有可能无法到达而连续的字符如果在串中

2015-08-20 18:18:15 827

原创 【POJ 3292】 Semi-prime H-numbers

【POJ 3292】 Semi-prime H-numbers打个表题意是1 5 9 13...这种4的n次方+1定义为H-numbersH-numbers中只由1*自己这一种方式组成 即没有其他因子的 叫做H-prime两个H-prime的乘积叫做H-semi-prime 还有一个要求是H-semi-prime只能由两个H-prime组成 即4个H-number 不可由3

2015-08-20 09:02:25 978

原创 【POJ 2635】 The Embarrassed Cryptographer

【POJ 2635】 The Embarrassed Cryptographer考查素数表就好好玩素数表……卡mod算啥= =TOT 总之 就是敲个表 暴力枚举取余 一发十进制取余(即*10+%TLE……) 看disscuss才知道mod多了影响很大 改成高进制取(既多累几位再取) 985ms刚才强加了别人的打表代码 跳了1400ms.。。吓死宝宝了 看来学的这种打法挺实用

2015-08-19 21:47:09 694

原创 【POJ 1942】 Paths on a Grid

【POJ 1942】 Paths on a Grid一共要走m+n步 C(n,m+n) 即可求出方案数 为防止超时 要始终保证n最小 为了防止WA 要用unsigned并且 n||m。。。坑点就是n m 可能有一个为0 也要输出。。。代码如下:#include #include using namespace std;#define ll long l

2015-08-19 16:24:27 729

原创 【POJ 1019】 Number Sequence

【POJ 1019】 Number Sequence二分水题 放组合数学里。。。可能有什么正规姿势吧Orz112123123412345...这种串 分成长度1 2 3 4 5...的串 注意有多位数把长度累加到一个数组里 注意要累加 因为查询的时候查的是原串中对应位置的数 因此要累加上前一次的长度 然后二分处该串前的总长 用查询的位置-之前串的总长 就是在最长的串中的

2015-08-19 15:39:45 806

原创 【POJ 1850】 Code

【POJ 1850】 Code还是很想说 数位dp真的很方便!!!数位dp真的很方便!!!数位dp真的很方便!!!重要的事说三遍#include #include #include using namespace std;int dp[11][27];int digit[11];/*1~26表示加的字母 0表示不加有前导

2015-08-19 14:59:46 953

原创 【POJ 3252】 Round Numbers

【POJ 3252】 Round Numbers组合数学里的题。。在我飞的引导下走上了数位dp的不归路。。。这样算不算开挂。。。。好羞涩数位dp真的真的真的好好用!!!数位dp真的真的真的好好用!!!数位dp真的真的真的好好用!!!重要的事说三遍 一入数位dp深似海 再也粗不来了。。。 用数位很好想……都不知道该怎么写题解。。。代码如

2015-08-19 13:33:52 940

原创 【HDOJ 3652】B-number

【HDOJ 3652】B-number给一整数n 找<=n的整数中能被13整除且含有13的 数位dp 记忆化!! 一入记忆化深似海。。。再也不想用递推了。。。发现真的很好想 只要保证满足条件把未选高位(即能随意挑数的)记录下来 不断搜索递归就行代码如下:#include <iostream>#include <cstdio>#include <cstring>using namespace s

2015-08-19 11:25:05 1041

原创 【CF 570E】Pig and Palindromes

【CF 570E】Pig and Palindromes三维dp 找对应步数的组合数目 二三维分别表示离1,1 和 n,m该步数的回文种类 如果吧状态数都存下内存太大 开个滚动dp数组(最近刚学的)代码如下:#include <iostream>#include <cstdio>#include <cstring>#define mod 1000000007#define ll long l

2015-08-18 21:35:11 941

webrtc noise suppression

基于最新webrtc人工抽离出来的ns demo(降噪)。 与平台抽离,可直接在Linux下编译。 mkdir build cd build cmake ../src; make -j; ./bin/ns_demo &lt;input_signal.pcm&gt; 转载请注明出处: https://blog.csdn.net/ChallengerRumble

2019-08-14

webrtc aec3

基于最新webrtc人工抽离出来的aec demo。 与平台抽离,可直接在Linux下编译。 mkdir build cd build cmake ../src; make -j; only aec: ./bin/demo aec + aes + cng(comfort noise generate): ./bin/echo_remover_demo 转载请注明出处: https://blog.csdn.net/ChallengerRumble

2019-08-14

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

TA关注的人

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