9.28总结 & 9.29计划

昨天本来想去写《均分数据》的,但题解有个细节一直没看懂,就没去写了。写了《三步必杀》,然后去看了《HH的项链》,本来是想复习莫队的,结果数据已经被改数据狂魔\(\text{chen_zhe}\)改的莫队过不去了,但我看懂了主席树题解不亏,但没实现,打算今天实现。

昨晚的考试。再次爆炸
\(T1\) 加工生产调度
。。多少年前的毒瘤题了。。
我排序方法错了,然后就\(100\)->\(0\)了。

先对所有产品按\(min(a,b)\)升序排序,然后再从左到右扫一遍,如果\(a>b\)就放右边,否则放左边。
因为\(min(a,b)\)越小就代表这个产品能节省越多的时间,如果\(a\)小就放左边,\(b\)小就放右边。

\(T2\) 集合划分
题目不难,就是出数据的人爆\(int\)了,所以我们要跟着他爆\(int\)才能过
我用的记搜,时间复杂度\(O(2^n)\)

其实这题就和\(n\)个球放进\(n\)个盒子允许空盒是一样的,
递推方程:\(f[i][j]=f[i-1][j-1]+f[i][j-1]\),答案就是\(f[n][n]\),时间复杂度\(O(n^2)\)

\(T3\) 地毯填补
看起来有点复杂,加上旁边很多人都说没有\(spj\)过不了,我干脆了没写了qwq,考完一看,这不是很久之前写过的很水的分治吗我怎么一点印象也没有亏了
把正方形一分为四递归处理,公主在的子正方形会填满,其他三个各剩一个,集中在中心,然后再放一个就行了。

void fill(int size, int x, int y, int px, int py){
    if(size == 1) return;
    int X = x + size - 1, Y = y + size - 1;
    int midx = (x + X) >> 1, midy = (y + Y) >> 1;
    size >>= 1;
    if(px <= midx && py <= midy){
      printf("%d %d %d\n", midx + 1, midy + 1, 1);
      fill(size, x, y, px, py);
      fill(size, x, midy + 1, midx, midy + 1);
      fill(size, midx + 1, y, midx + 1, midy);
      fill(size, midx + 1, midy + 1, midx + 1, midy + 1);
    }
    if(px <= midx && py > midy){
      printf("%d %d %d\n", midx + 1, midy, 2);
      fill(size, x, y, midx, midy);
      fill(size, x, midy + 1, px, py);
      fill(size, midx + 1, y, midx + 1, midy);
      fill(size, midx + 1, midy + 1, midx + 1, midy + 1);
    }
    if(px > midx && py <= midy){
      printf("%d %d %d\n", midx, midy + 1, 3);
      fill(size, x, y, midx, midy);
      fill(size, x, midy + 1, midx, midy + 1);
      fill(size, midx + 1, y, px, py);
      fill(size, midx + 1, midy + 1, midx + 1, midy + 1);
    }
    if(px > midx && py > midy){
      printf("%d %d %d\n", midx, midy, 4);
      fill(size, x, y, midx, midy);
      fill(size, x, midy + 1, midx, midy + 1);
      fill(size, midx + 1, y, midx + 1, midy);
      fill(size, midx + 1, midy + 1, px, py);
    }
}

\(T4\) 金币排列问题
这不是很久前的那道毒瘤题《魔板》吗
算了,果断放弃

\(T5\) 雇佣计划
\(hkw\):这不是最小费用最大流吗
%%%
不会啊
我就写了个搜索骗了60分,海星。

炸了炸了炸了。

9.29:改题,写《HH的项链》,然后复习吧

猜你喜欢

转载自www.cnblogs.com/Qihoo360/p/9721966.html