摘要:
作者:jostree 转载请注明出处http://www.cnblogs.com/jostree/p/4030057.html零、操作快捷键:对于的块,按下ctrl+j即可快速跳转。一、环境快捷键 1.F5 2.在insert状态下输入大写E开头的快捷串,例如EFL=flushleft,EEQ=... 阅读全文
摘要:
作者:jostree 转载请注明出处http://www.cnblogs.com/jostree/p/4030019.html算法导论第二章的归并排序,注意在merge步骤时,要开辟临时数组保存两个数组排序候的结果,然后在把临时数组逐个导入待排序数组中。代码如下: 1 #include 2 #in... 阅读全文
摘要:
作者:jostree 转载请说明出处http://www.cnblogs.com/jostree/p/4020792.html题目链接:zoj 3829 Known Notation使用贪心+模拟。由于没有数字之间没有空格,因此该题有如下性质:1.如果该字符串全部为数字,则无需操作,直接输出0。2.... 阅读全文
摘要:
题目链接:zoj 3471 Most Powerful作者:jostree 转载请说明出处很经典的状态dp,使用i的二进制位表示粒子的状态,0表示存在,1表示不存在。dp[i]表示在状态i的情况下能够释放的最大的能量,注意自身不能够发生碰撞。例如4个粒子的状态1100表示第0个和第1个粒子不存在,第... 阅读全文
摘要:
题目链接:hdu 2824 The Euler function计算欧拉函数,欧拉函数$\phi(x)$等于不超过$x$且与$x$互质的整数的个数。这里有两种求解方法:方法一:显然欧拉函数有如下三个性质:1、$\phi(x=p) = p-1$,当$x$是质数时,$k\in[1,p-1]$的$p-1$... 阅读全文
摘要:
原题链接:hdu 1576 A/B同样是用扩展的欧几里得算法。A = 9973k+n = xB,从而转化为:xB-9973k=n求解x即可。具体扩展欧几里得算法请参考:hdu 2669 Romantic代码如下: 1 #include 2 #include 3 #include 4 #incl... 阅读全文
摘要:
原题链接:hdu 2669 Romantic使用扩展的欧几里得算法。对于初始的两个整数$x_1,y_1$,我们一定可以计算出$ax_1+by_1 = gcd(a,b)$,递推下一步,我们可以得到公式:\begin{equation} ax_1+by_1 = gcd(a,b) = gcd(b,a\%b... 阅读全文
摘要:
题目链接:hdu 4267 A Simple Problem with Integers类似于题目:hdu 1556 Color the ball的技巧实现树状数组的段更新点查询。由于该题对于段的更新并不是连续的,从而可以构造多个树状数组。因为$k \in [1,10] $,从而可以把更新划分为如下... 阅读全文
摘要:
题目链接:hdu 1394 Minimum Inversion Number该题是求最小逆序对的扩展。可以使用树状数组来实现。对于$n$个数的序列$A$,其第$i$个数($i\in [0,n)$)的逆序数$r_i$可以表示为它的角标$i$减去在它之前且不大于它的数的个数。例如对序列A = {1,3,... 阅读全文
摘要:
首先对每行进行排序,并对与前两行有$A = a_1 \leq a_2 \leq \cdots \leq a_k$和$B = b_1 \leq b_2 \leq \cdots \leq b_k$。首先把所有的$b_i , i\in [1,k]$与$a_1$进行求和,并加入优先队列中。其中最小的必然是$... 阅读全文