题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3157 https://www.lydsy.com/JudgeOnline/problem.php?id=3516 题解:http://blog.miskcoo.com/2014/06/bzoj-3157 没管 O(m) 的方法…… UPD(2019.2.20):这样构造的思想大概是想要用 \( f(j) \) (j<=i) 来表示出 \( f(i) \) . 考虑 \( f(m)=\sum…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3157 https://www.lydsy.com/JudgeOnline/problem.php?id=3516 这篇博客写得太好:http://blog.miskcoo.com/2014/06/bzoj-3157 然而目前之会 \( O(m) \) 的做法: 感觉关键是设计 \( S_{i} \),把它设在 \( m \) 那一维上很妙,毕竟 \( i^{m} \) 不太好做: 然而推式…
题意 求\(\sum_{k=1}^{n}k^mm^k (n\leq1e9,m\leq1e3)\) 思路 在<>中有一个方法用来求和,称为摄动法. 我们考虑用摄动法来求这个和式,看能不能得到比较好的复杂度. 首先令\(f(i)=\sum_{k=1}^nk^im^{k}\). 然后开始表演 \[ \begin{align*} (m-1)f(i)&=\sum_{k=1}^nk^im^{k+1}-\sum_{k=1}^nk^im^k \\ &=\sum_{k=1}^{n+1}(k-1)…
果然我数学不行啊,题解君: http://www.cnblogs.com/zhuohan123/p/3726933.html const h=; var fac,facinv,powm,s:..]of int64; n,m:int64; function mexp(a,b:int64):int64; begin ); mexp:=sqr(mexp(a,b>>))mod h; = then mexp:=mexp*a mod h; end; function C(n,r:int64):int64;…
令\[S_i=\sum_{k=1}^n k^i m^k\]我们有\[\begin{eqnarray*}(m-1)S_i & = & mS_i - S_i \\& = & \sum_{k=1}^n k^i m^{k+1} - \sum_{k=1}^n k^i m^k \\& = & \sum_{k=2}^{n+1} (k-1)^i m^k - \sum_{k=1}^n k^i m^k \\& = & n^i m^{n+1} + \sum_{k=…
Description Input 共一行包括两个正整数N和M. Output 共一行为所求表达式的值对10^9+7取模的值. 特判m=1 m≠1时: 设S[u]=sigma(i^u*m^i) m*S[u]=sigma(i^u*m^(i+1)) =sigma((i-1)^u*m^i)+n^u*m^(n+1) 两式相减得(m-1)*S[u]=n^u*m^(n+1)-sigma((i^u-(i-1)^u)*m^i) S[u]=(n^u*m^(n+1)-sigma((i^u-(i-1)^u)*m^i)…
数论 题解:http://www.cnblogs.com/zhuohan123/p/3726933.html copy一下推导过程: 令$$S_i=\sum_{k=1}^{n}k^im^k$$ 我们有$$ \begin{aligned} (m-1)S_i &= mS_i-S_i \\&=\sum_{k=1}^n k^im^{k+1}-\sum_{k=1}^n k^i m^k \\&=\sum_{k=2}^{n+1}(k-1)^i m^k-\sum_{k=1}^n k^i m^k \…
[BZOJ3157/3516]国王奇遇记(数论) 题面 BZOJ3157 BZOJ3516 题解 先考虑怎么做\(m\le 100\)的情况. 令\(f(n,k)=\displaystyle \sum_{i=1}^n i^k m^i\),然后推式子: \[\begin{aligned} f(n+1,k)&=\sum_{i=1}^{n+1} i^km^i=m+\sum_{i=2}^{n+1}i^km^i\\ &=m+\sum_{i=1}^n (i+1)^km^{i+1}\\ &=m+…
bz第233题,用一种233333333的做法过掉了(为啥我YY出一个算法来就是全网最慢的啊...) 题意:求sigma{(i^m)*(m^i),1<=i<=n},n<=10^9,m<=200 别人的做法: O(m^2logn),O(m^2),甚至O(m)的神做法 学渣的做法:矩乘+秦九韶算法,O(m^3logn),刚好可以过最弱版本的国王奇遇记的数据 (极限数据单点其实是1.2s+,不想继续卡常了-bzoj卡总时限使人懒惰-如果把矩乘的封装拆掉可能会快点吧,然而人弱懒得拆了...…
emmm...... 直接看题解好了: BZOJ-3157. 国王奇遇记 – Miskcoo's Space O(m)不懂扔掉 总之,给我们另一个处理复杂求和的方法: 找到函数之间的递推公式! 这里用错位相减,然后想办法转化 由于根据二项式定理,展开之后会出现k^i的乘方,所以展开,有助于变成f(j)递推下去 O(m^2) #include<bits/stdc++.h> #define reg register int #define il inline #define numb (ch^'0…
Link: BZOJ 3157 传送门 Solution: 题意:求解$\sum_{i=1}^n m^i \cdot {i^m}$ $O(m^2)$做法: 定义一个函数$f[i]$,$f[i]=\sum_{i=1}^n k^i \cdot {m^k}$ $(m-1)\cdot f(i)=\sum_{k=1}^n k^i \cdot m^{k + 1} - \sum_{k=1}^n k^i \cdot m^k$ $= \sum_{k=1}^{n+1} (k - 1)^i\cdot m^k - \s…
题面传送门 首先根据我们刚学插值时学的理论知识,\(f(i)\) 是关于 \(i\) 的 \(k+1\) 次多项式.而 \(g(x)\) 是 \(f(x)\) 的前缀和,根据有限微积分那一套理论,\(g(x)\) 是关于 \(x\) 的 \(k+2\) 次多项式.注意到此题 \(k\) 数据范围不过 \(10^2\) 级别,因此我们可以考虑把 \(g\) 多项式的系数插出来.我们代入 \(k+3\) 个点值 \(1,2,3,\cdots,k+3\),预处理出 \(\prod\limits_{i=…
题面:BZOJ3157 一句话题意: 求: \[ \sum_{i=1}^ni^m\ \times m^i\ (mod\ 1e9+7)\ \ (n \leq 1e9,m\leq200)\] 题解 令 \[ DP[i]=\sum_{k=1}^n k^i*m^k \] 则 \[ (m-1)DP[i]=mDP[i]-DP[i] \] \[ =\sum_{k=1}^{n}k^im^{k+1}-\sum_{k=1}^nk^im^k \] \[ =\sum_{k=2}^{n+1}(k-1)^im^k-\sum…
先膜一发Miskcoo,大佬的博客上多项式相关的非常全 原题戳我 题目大意 求 \[\sum\limits_{i=1}^{n}i^mm^i\] 题解 设一个函数\(f(i)=\sum\limits_{j=1}^{n}j^im^j\) 然后貌似用一个叫扰动法(感觉就是错位相消法)的东西,算一下 \[(m-1)f(i)=\sum\limits_{j=1}^{n+1}(j-1)^im^j-\sum\limits_{i=1}^{n}j^im^j=n^im^{n+1}-\sum\limits_{j=1}^…
题目描述 三倍经验题. 给你\(n,m\),求 \[ \sum_{i=1}^ni^mm^i \] \(n\leq {10}^9,1\leq m\leq 500000\) 题解 当\(m=1\)时\(ans=\frac{n(n+1)}{2}\) 剩下的部分这篇博客有讲YWW's Blog 时间复杂度:\(O(m+\log n)\) 代码 #include<cstdio> #include<cstring> #include<algorithm> using namespa…
由二项式定理,(m+1)k=ΣC(k,i)*mi.由此可以构造矩阵转移,将mi*ik全部塞进去即可,系数即为组合数*m.复杂度O(m3logn),因为大常数喜闻乐见的T掉了. #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<cstring> #include<algorithm> using namespace std; in…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3202 可见Zinn博客:https://www.cnblogs.com/Zinn/p/10073897.html 关于算有序三元组那个部分,自己觉得是这样解释: 这样标号的话,旋转置换有2个:(1,2,3)和(1,3,2): 不动的话是一个置换:(1)(2)(3): 翻转的话,贴着一个侧面所在的面上下翻转,就是三个置换:(1)(2,3).(2)(1,3).(3)(1,2).根据Polya定…
求$\sum_{i=1}^ni^mm^i$.$n \leq 1e9,m \leq 200$. 其实我也不知道这东西为啥叫“扰动法”,大概是在黑暗的边缘试探?就是那种,人家再多一点就被您看破了,然后您就一定要搞他那么一点去试探他的限度,一不小心给他搞爆了,这种感觉. 扰动三连: 等比数列求和: $\sum_{i=1}^na_i,a_i=a_1*q^{n-1}$. 令$S_n=\sum_{i=1}^na_i$. 给他日上个$n+1$. $S_n+a_{n+1}$ $=\sum_{i=1}^{n+1}…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1045 费用流TLE. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<queue> #define ll long long using namespace std; ; const ll INF=1e15; ,pre[N]…
[BZOJ4654][NOI2016]国王饮水记(动态规划,斜率优化) 题面 BZOJ 洛谷 题解 首先肯定是找性质. 明确一点,比\(h_1\)小的没有任何意义. 所以我们按照\(h\)排序,那么\(h_1\)就是当前\(1\)号位置的水量. 假设我们使用的次数不受到任何限制,我们思考怎么样才是最优. 首先每次只和一个合并一定比和多个合并更优. 假设有三个位置\(h_1\lt h_2\lt h_3\) 那么如果直接合并,答案是\((h_1+h_2+h_3)/3\) 如果每次合并一个,答案是\(…
小鑫の日常系列故事(六)--奇遇记 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 今天,小鑫在山上玩的时候,意外被推下了悬崖. 当然,掉下悬崖之后必然有奇遇.(剧情就是这么坑爹)就狗血的碰到了野人A和野人B.然后两位野人就给了他一本武功秘籍. 这是一本强大的武功秘籍(好像武功秘籍一直都很强大).共有40层的内功心法.当他练到第n层的时候,就可以借助高强的武功离开这个地方.你已经知道的是:练成第一层需要一天,练成第二…
linux内核奇遇记之md源代码解读之四 转载请注明出处:http://blog.csdn.net/liumangxiong 运行阵列意味着阵列经历从无到有,建立了作为一个raid应有的属性(如同步重建),并为随后的读写做好的铺垫.那么运行阵列的时候到底做了哪些事情,让原来的磁盘像变形金刚一样组成一个新的巨无霸.现在就来看阵列运行处理流程: 5158 static int do_md_run(struct mddev *mddev) 5159 { 5160 int err; 5161 5162…
我已经确定了2017年1月24日将是在旗滨工作的最后一天. 回顾从2015年8月3日入职那天开始到现在,一年半多的时间里的种种奇葩经历,深深被这家公司的制度.企业文化.官僚主义.粗糙的信息化建设以及利益冲突的各种博弈情景震撼着. 在过往的供职经历中,我以及所在的团队都是恪尽职守,同事们只有一个目标就是把项目做好,而且集体利益一致,互相扶持帮助,同事间关系非常融洽.而跟上级甚至高层老板的工作汇报也非常的顺利,高层老板给了IT团队和信息化建设的工作非常高的信任和支持,属一把手管理制度,这给平时做项目…
最早听到这家公司的名字,大概还是在好几年前. 正是2012年,之前的在一起灿坤待过的同事LY在这家公司当高层,正好公司规模大了,要上ERP项目.苦于公司没有这方面的人才,而内部IT又太差劲支撑不起来.他想到之前我们是同事时他经常找我在ERP上导数据导报表的情景,于是联系我问有没有兴趣.刚好那时候我正从同致电子跳槽到立达信在导SAP项目,就婉拒了.期间我们偶尔有联系,他不时跟我讲这家公司环境不错,待遇好,内部IT不够强大到来支撑起ERP项目的实施等等,也跟我说了很多的福利,比如购房优惠,比如高层购…
题记:<KB奇遇记>已经更新到第八篇了.这一篇主要是讲项目实施过程中项目组成员之间的关系,也是我最不愿意回忆和讲述的事情. 早在来到KB公司的第一天开始,我就一直兢兢业业,丝毫不敢怠慢.面对上级且兼ERP项目经理的李总,但凡是她提出的任何要求和问题我尽量满足和解决,不会肆意推诿,哪怕这件事情跟我的工作没有任何关系.虽然我之前做的是SAP项目,其他的工作如部门管理.机房.加密.一卡通.HR等“份外”基本上都没有接触过,但我还是尽我的可能去学习,去接触和研究,在内部人员极其匮乏.外面又有几个不懂技…
本来还想写一篇关于前CIO的著名言论,不过想想还是算了.博客空间宝贵,不乱恶心人了. 这篇博文是本系列<KB奇遇记>的最后一篇了. 虽然在KB公司有这么多的苦,但毕竟收获也很多,至少让我懂得了未来职业选择应该考虑的点. 有一天G来项目组找我们,说上头的任命意思.本来还以为年后还会在过来,但没想到公司年会之后就立马公告了人事任命,老板的亲信前任CIO接了信息部经理.而我们也只能离开了.他还找我们开会简单谈了一下交接的事情,我最讨厌的就是那句话:我知道项目组很辛苦,做了很多很多的工作,经常加班通宵…
Android分组子级的不同视图布局之BUG奇遇记 最近在使用按日期分类列表,二级条目可能不一样,于是就想到了ExpandableListView. ExpandableListView的布局显示分割线问题:  <ExpandableListView                android:id="@+id/expandableListView"                android:layout_width="match_parent"    …
SQL Server的SQL查询不区分大小写,而LINQ查询区分大小写,所以在写LINQ代码时需要注意的是——如果这段LINQ代码将会被Entity Framework解析为SQL语句(LINQ to Entities),则不用考虑大小写问题:如果这段LINQ代码在内存中执行,就要考虑大小写的问题. 比如下面的LINQ to Entities(不用考虑大小写): //代码自来CNBlogsTagService _unitOfWork.Set<Tag>().Where(x => tagNa…
[UOJ#223][BZOJ4654][Noi2016]国王饮水记 试题描述 跳蚤国有 n 个城市,伟大的跳蚤国王居住在跳蚤国首都中,即 1 号城市中.跳蚤国最大的问题就是饮水问题,由于首都中居住的跳蚤实在太多,跳蚤国王又体恤地将分配给他的水也给跳蚤国居民饮用,这导致跳蚤国王也经常喝不上水.于是,跳蚤国在每个城市都修建了一个圆柱形水箱,这些水箱完全相同且足够高.一个雨天后,第 i 个城市收集到了高度为 hi 的水.由于地理和天气因素的影响,任何两个不同城市收集到的水高度互不相同.跳蚤国王也请来蚂…
LINK:国王饮水记 看起来很不可做的样子. 但实际上还是需要先考虑贪心. 当k==1的时候 只有一次操作机会.显然可以把那些比第一个位置小的都给扔掉. 然后可以得知剩下序列中的最大值一定会被选择. 考虑是否选出其他数字 容易想到如果选择了必然要比拿到最大的之后的平均数要大. 这样贪心下去即可. 考虑当k不等于1的时候. 设\(f_i\)表示第i次使用过后的最大值.显然有\(f_i>f_{i-1}\) 那么由此我们得到某个点至多被选择一次 再选择没有任何收益. 所以k可以对n取min. 此时观察…