改良程序的11技巧

有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。

让我们看一些基本的编程技巧:

更多

POJ2250 Compromise DP LCS(最长公共子序列)

http://poj.org/problem?id=2250
题目大意
输入两组大量的单词 单词数小于100 每个单词长度小于30 每组单词遇到# 算输入完毕
顺序输出两组单词中序列相同的单词

额描述很简短。。。。




更多

nyist699 Tunnel 托兰定理

Tunnel(托兰定理)
时间限制:1000 ms | 内存限制:65535 KB

描述
有T组数据 每组数据有一个数字n,表示有n个点,问n个点相互连接不构成三角形 最多有几条边?
eg:n=3 A C B 有A----B B----C 所以有2条边 (如果有C----A那么会出现三角型 不可以)




更多

nyist698 A Coin Problem 矩阵快速幂

A Coin Problem(矩阵快速幂 入门水题)
时间限制:3000 ms | 内存限制:65535 KB
描述
One day,Jiameier is tidying up the room,and find some coins. Then she throws the coin to play.Suddenly,she thinks of a problem ,that if throw n times coin ,how many situations of no-continuous up of the coin. Hey,Let's solve the problem.




更多

POJ1458 Common Subsequence DP 最长公共子序列

POJ1458
题目大意:
输入2个字符串 输出两个字符串最长公共子序列。。
eg:
input: abcfbc abfcab (注意!这条数据 字串的顺序可能变了。。。)
programming contest
abcd mnp
output:4
2
0










更多

POJ1953 World Cup Noise DP入门

POJ1953
一道很好的dp入门题目。。。被我坑了。
开始读题没有读明白误解了题目 因为它跟Hrbust1132水数一样。。
后来发现是自己错了。。。




更多

POJ2081 Recaman's Sequence DP入门

POJ2081
题目描述的是 有一个数组大小为500000
从a0 = 0 开始,m > 0
if(am > 0 并且 am没有在a数组中出现过) am = am−1 − m
else am = am−1 + m
数组示例:0, 1, 3, 6, 2, 7, 13, 20, 12, 21, 11, 22, 10, 23......






更多

wordpress代码高亮插件

在日常的使用当中,苦命的孩纸们一定会把自己的代码插在文章中,为了获得很好的阅读效果,我们会让代码变得易于阅读,而不是跟文章一样,乱乱的一大片。
下面介绍一个wordpress的插件:syntaxhighlighter,它的使用方法很简单。


更多

poj 1579 function run fun DP记忆化

POJ1579
题目需要你需要实现以下函数的功能:

int w(int a,int b,int c){//原始的函数
    if(a<=0||b<=0||c20||b>20||c>20)return 1048576;
    else if(a<b&&b<c)return (w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c));
    else return (w(a-1,b,c)+w(a-1,b-1,c)+w(a-1,b,c-1)-w(a-1,b-1,c-1));
}


更多

POJ1163 Triangle DP入门题目

POJ1163
记得第一次遇到这个题目的时候 当时束手无策啊。。
那个时候 脑袋笨笨的 只想着从上向下计算但是结果还不对。。。
后来想到了从下向上的加和,每次都保存最大的结果,思路出来了就
没经过正规的培训。。。 后来知道属于 DP的多段图





更多