自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Winterfell30' Blog

太弱了。。。

  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 POJ 3071 Football (概率DP)

题意有2n2^n个队伍,每次相邻的两个比赛一轮一轮淘汰求胜利概率最大的队伍。思路令dp[i][j]表示第i支队伍在第j轮胜利的概率,那么显然答案就是max(dp[i][n])max(dp[i][n]),然后dp到枚举他第j轮的对手卡住了,然后画了一个树形的赛程图就发现i在第j轮的对手实际上是以从下往上第j层为节点的i所在的那个子树的除了第一轮被i淘汰的队伍之外的其他队伍。 然后发下这个之后就能从二

2016-04-29 15:08:58 409

原创 POJ 3744 Scout YYF I Scout YYF I (递推+矩阵快速幂)

题意有n个地方有地雷,初始站在1处,有p的概率往前走1步,1-p的概率往前走2步,求安全通过的概率。思路首先我们能想到的是直接递推即dp[i]=p∗dp[i−1]+(1−p)∗dp[i−2]dp[i]=p*dp[i-1]+(1-p)*dp[i-2]然后矩阵快速幂加速一下,但是这样做中间的地雷很难处理。 因为n很小我们就分段求,对每一个地雷求从前一个地雷到通过的概率,比如求通过第x个地雷的概率就是从

2016-04-29 12:14:29 528

原创 Codeforces 669E Little Artem and Time Machine (离散化树状数组)

题意给出一个multiset,可以对他进行三种操作: 1.在t时间增加一个x 2.在t时间删除一个x 3.查询t时间x的个数并输出思路题意看了很久很懂= =,看懂之后决定朴素BIT来一发,因为有时间和x两个维度,且都是1e9,选择其中任意一个离散化一下就可以用map来维护sum了,然后过了。时间390ms,内存50000+。。。代码#include <stdio.h>#include <st

2016-04-28 21:59:27 603

原创 Codeforces 669D Little Artem and Dance (脑洞)

题意给出一个1到n的序列,对他有两个操作: 1.整体向右移动x格子 2.奇偶位的数字互换 求经过q次操作之后的数字序列。思路显然这题是要O(q)来做的,从第一组样例能发现虽然整体在变,但是相邻的两个数是始终在一起的,但是这并不是正解,因为当移动的位数是奇数的时候再经过奇偶互换就不挨着了。 然后我随便造一个样例,发现不管怎么变奇偶性相同的相邻的数都是隔着一个数的顺序排列的,然后想一下变化过程的

2016-04-28 21:50:32 710

原创 Codeforces 669C Little Artem and Matrix (模拟)

题意对一个矩阵有三种操作 1.第row行循环右移x位 2.第col列循环下移x位 3.告诉你第row行的第col列的数是x。 要求构造出符合操作的原矩阵。思路因为数据很小,直接暴力就可以了,按照操作倒着模拟一遍,有3操作的就填数,没有的就为0。代码#include <stdio.h>#include <string.h>#include <iostream>#include <algo

2016-04-28 21:34:51 697

原创 SDUT 2878 Circle (高斯消元)

题意初始时站在0点,每次有0.5的几率左移一格或者右移一格,求移动到x格的期望。思路显然我们能写出来Exp[i]=0.5\*Exp[i−1]+0.5\*Exp[i+1]+1Exp[i] = 0.5\*Exp[i-1]+0.5\*Exp[i+1]+1 这样的式子我们能写出n个,然后这个式子转化一下变成Exp[i]−0.5\*Exp[i−1]−0.5\*Exp[i+1]=1Exp[i]-0.5\*Ex

2016-04-28 16:45:54 459

原创 SGU 275 To xor or not to xor (贪心+高斯消元)

题解从这个数列里面取出一些数,异或最大,求他们的异或值。思路显然要求异或最大我们首先要把这些数表示成二进制形式,然后从高到低按位查找,如果这一位存在一个数是1就取这个数,然后异或之后这一位就是1了。取了这个数之后这个数的低位自然也要取,所以我们用高斯消元回代的形式来维护当前位的异或值。代码#include <stdio.h>#include <string.h>#include <iostrea

2016-04-28 13:55:53 495

原创 POJ 1681 Painter's Problem (高斯消元)

题意和POJ的1222差不多,把一个格子变色然后相邻的4个也会变色,求令其全部变成黄色需要的最少步数。思路POJ1222当时直接状态压缩枚举过的,这题数据也比较小,应该可以状压DP来做,不过复杂度而论当然还是高斯消元要好。 我们可以先预处理出一个n2∗n2n^2*n^2的方程组然后搞死小圆(误 消元的时候求出自由变元存在数组里,然后状态压缩来枚举自由变元求一下利用这些自由变元求出目标状态(全0)

2016-04-26 20:53:01 389

原创 POJ 1830 开关问题 (01高斯消元)

题意有n个开关,按动按钮可以改变灯泡的开关状态,有些开关之间是有联系的,给出初始状态和目标状态,求是否可行,如果可行,求方案数目。思路我们可以另矩阵[x1,x2...xn][x_1,x_2...x_n]来表示解集,即第i个开关需要按动的次数,最后的状态即[b1,b2...bn][b_1,b_2...b_n],原状态是[a1,a2...an][a_1,a_2...a_n],即A*X=B,这里没有要求解

2016-04-26 14:38:50 477

原创 Codeforces 282E Sausage Maximization (Trie)

题意给一些数字,求前缀异或和后缀异或的最大值,前缀和后缀不能有交集。思路枚举每一个后缀,如果用朴素算法就要枚举每一个前缀求最大值。 我们可以后缀往后枚举的时候,从之前的前缀里找到异或最大的,然后前缀加一个数的长度之后继续插入。代码#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#incl

2016-04-26 14:20:38 489

架构整洁之道

《架构整洁之道》是创造“Clean神话”的Bob大叔在架构领域的登峰之作,围绕“架构整洁”这一重要导向,系统地剖析其缘起、内涵及应用场景,涵盖软件研发完整过程及所有核心架构模式。《架构整洁之道》分为6部分,第1部分纲领性地提出软件架构设计的终极目标,描述软件架构设计的重点与模式;第2~4部分从软件开发中三个基础编程范式的定义和特征出发,进一步描述函数、组件、服务设计与实现的定律,以及它们是如何有效构建软件系统的整体架构的;第5部分从整洁架构的定义开始,详细阐述软件架构设计过程中涉及的方方面面,包括划分内部组件边界、应用常见设计模式、避开错误、降低成本、处理特殊情况等,并以实战案例将内容有机整合起来;第6部分讲述具体实现细节。

2018-11-14

空空如也

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

TA关注的人

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