题解

19 条题解

  • 0
    @ 2023-08-09 15:37:12

    正解:DLX

  • 0
    @ 2009-10-24 15:26:08

    强大的搜索.

    枚举每格的状态 再加剪枝.

    OTZLSS的大牛!!!

  • 0
    @ 2009-10-24 15:22:54

    位运算秒杀得真爽!!

  • 0
    @ 2009-10-23 16:31:16

    秒杀

    记录每行每列的状态

    黑格子数超过就剪掉。。。。

    错了一大堆的细节 错了N次

    Accepted 有效得分:100 有效耗时:0ms

  • 0
    @ 2009-10-23 16:17:24

    TLE了无数次

    竟然是当有一行必须都是白色时预处理时死循环

    囧啊

  • 0
    @ 2009-07-10 22:35:40

    时间上有些小微...幸亏是puppy评测的,要不然就TLE了...

  • 0
    @ 2009-05-14 12:07:00

    水题。

  • 0
    @ 2009-04-26 16:26:33

    Accepted 有效得分:100 有效耗时:0ms

  • 0
    @ 2009-04-23 18:23:24

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Accepted 有效得分:100 有效耗时:0ms

  • 0
    @ 2009-04-23 11:12:56

    可以用位运算,时间复杂度为O(3nm)的,绝对可以AC

  • 0
    @ 2009-02-14 19:34:59

    #include

    using namespace std;

    bool a[22][22];

    int xx[22][22],yy[22][22],lx[22],ly[22],sx[22][22],sy[22][22],dy[22];

    int n,m;

    bool check(int mx,int my)

    {

    if (!a[mx-1][my]) {dy[my]++;if (dy[my]>ly[my]) return false;return true;}

    for (int i=mx;i>=0;i--) if (!a[i][my]) {if (mx-i>yy[my][dy[my]]) return false; else return true;}

    }

    bool check2(int mx,int my)

    {

    if (!a[mx-1][my]) return true;

    for (int i=mx-1;i>=0;i--) if (!a[i][my]) {if (mx-i-1!=yy[my][dy[my]]) return false; else return true;}

    }

    bool check3()

    {

    for (int i=1;i0;j--) if (!a[j][i]) {if (m-j!=yy[i][ly[i]]) return false;break;}

    }

    for (int i=1;i

  • 0
    @ 2008-07-27 14:44:53

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 2009ms

    ├ 测试数据 10:运行超时...

    ---|---|---|---|---|---|---|---|-

    Unaccepted 有效得分:90 有效耗时:2009ms

    我的方法就猥琐了,dp+搜索,差了好些啊。

  • 0
    @ 2007-11-08 19:17:56

    编译通过...

    ├ 测试数据 01:答案正确... 0ms

    ├ 测试数据 02:答案正确... 0ms

    ├ 测试数据 03:答案正确... 0ms

    ├ 测试数据 04:答案正确... 0ms

    ├ 测试数据 05:答案正确... 0ms

    ├ 测试数据 06:答案正确... 0ms

    ├ 测试数据 07:答案正确... 0ms

    ├ 测试数据 08:答案正确... 0ms

    ├ 测试数据 09:答案正确... 0ms

    ├ 测试数据 10:答案正确... 0ms

    ---|---|---|---|---|---|---|---|-

    Accepted 有效得分:100 有效耗时:0ms

    方法同swj大牛(freedom591)

    matrix67大牛出的数据都是那么的有趣……

    我想问的是……最大的两个数据有人看出来是什么图形没?

  • 0
    @ 2006-10-26 22:06:25

    不知道处理CSP的AC-3搞不搞的定

  • 0
    @ 2006-10-10 16:42:05

    我说一下我的方法吧

    先不管行列之间的关系,分别把每行和每列(线条)的所有情况搜索出来存起来。

    然后对于每一线条看有没有某一格必须得是某一种颜色的。如果有,就在棋盘上把这点记录下来。然后对于另一方向经过这一点的线条进行检验,凡是不符合刚刚判断出的那个点的颜色的可能性都删掉。如此往复,直到没有什么新的点被确定为止。

    测试数据好像到此都能解决了(即每一格颜色都确定下来了),如果没有,就把剩余的可能性递归搜索一边把。

  • 0
    @ 2006-10-06 19:33:15

    这题太难实现了,思想不难,但是做起来怎么这么多要考虑的东西。

    很不好意思的想看一下AC的人代码。谢谢!

  • 0
    @ 2006-10-06 12:35:16

    搜索做到N=30肯定没问题

    标准算法是迭代……做到N=100应该没问题吧……

  • 0
    @ 2006-10-06 11:17:21

    搜索就过了,不过哈搜过不了.

  • 0
    @ 2006-10-05 23:43:56

    AKD大牛还在吗?能说下您ac的方法吗

  • 1

信息

ID
1247
难度
7
分类
搜索 | 搜索与剪枝 点击显示
标签
(无)
递交数
303
已通过
49
通过率
16%
被复制
3
上传者