随笔分类 -  技巧

摘要:给一个n×n的01矩阵,你的任务是将尽量少的0变成1,是的每个元素的上下左右的位置(如果存在的话)的之和均为偶数。1#include #include using namespace std;const int N = 20;const int INF = 1=1 && tx=1 && ty>=1;... 阅读全文
posted @ 2015-12-08 18:39 justPassBy 阅读(533) 评论(0) 推荐(0)
摘要:如果,上面的图,如果用dij算法,那么dist[4] = 4, 是得不到正确的结果的, 这个因为dist[3]先被确定是最小,然后用来更新dist[4]但是存在负权,使得dist[3]更小,但是我们已经把结点3标记为不可用了(vis[3] = true), 所以存在错误如何使得使得结点3可用呢? 我... 阅读全文
posted @ 2015-07-14 19:34 justPassBy 阅读(275) 评论(0) 推荐(0)
摘要:这题采用分治的思想首先,根据最后一位是否为1,将数分为两个集合, 集合与集合之间的lowbit为1,然后将每个集合内的元素,倒数第二位是否为1,将数分为两个集合,集合与集合之间的lowbit为2以此类推。首先为什么要将数组进行排序,排序的规则是根据数字二进制数,从右到左,第一个不同的数字进行排序,0... 阅读全文
posted @ 2015-06-13 22:45 justPassBy 阅读(251) 评论(0) 推荐(0)
摘要:单调队列,就是队列里的元素是单调递增或者单调递减的。那就有人问了,这和优先队列有什么区别。单调队列里的单调递增(递减)不止是值的单调递增(递减),下标也是单调递增的。我们来看单调队列怎么维护的,就知道单调队列是什么东西了。这里以单调递增队列为例。将数组a[1->n]里面的元素依次入队列。 如果要入... 阅读全文
posted @ 2015-05-20 22:08 justPassBy 阅读(440) 评论(0) 推荐(0)