摘要:
山区建小学 该题的难点在于存在两个“子动态规划”并且需要用一个中间数组将两个“子动态规划”联系起来。 解题思路: 计算任意两个村子之间的距离,用动态规范显然降低了不少复杂度。(都可以单独出一个题目了~~(╯﹏╰)~~) 在任意两个村子之间建一所小学,并计算两个村子之间的所有村子到该小学的最短距离,求 阅读全文
摘要:
踩方格 做了好几个递推题,大多是披着递推的动态规划o(╥﹏╥)o 相对来说这题算是比较正经的递推了(*^▽^*) 只要区分开上一轮是从东/西边过来的还是从南边过来的,这题就基本ok了。 如果是从东(西)边过来的,那么这一步只能往西(东)走或者往北走。 如果是从南边过来的,那么这一步可以往东/西/北三 阅读全文
摘要:
判断整除 将前n-1个数看成一个整体序列,则n个数可能产生的结果就等于“前n-1个数产生的所有结果分别加上第n个数或分别减去第n个数” n-2也同理……直到1为止。 由于是判断有无结果能被k整除,所以所有的中间结果都可以取余k,从而使所有可能的结果保持在一个不大的范围,用数组进行存储。 下面代码中的 阅读全文
摘要:
流感传染 做这题时,程序最容易犯的错误就是认为“今天刚染病的人也具有传染性” 显然,今天刚染病的人昨天是不具有传染性的,所以今天染病的人绝不是因这种刚染病的人引起的! 所以在检查健康人今天是否存在染病风险时,应避免这一误区! 我这里使用的方法是对病人染病日期进行记录。 1 #include<iost 阅读全文
摘要:
斐波那契数列 代码当然是非常简单的。 最令我满意的是核心循环的“循环头”。 它使得程序尽最大努力不做不必要操作。 当然,它也恰如其分的满足了这种多组输入输出的需要。 1 #include<iostream> 2 using namespace std; 3 4 const int N=1e6+5; 阅读全文