91 条题解

  • 0
    @ 2009-03-22 10:09:41

    上下倒反刚刚全WA

  • 0
    @ 2009-03-16 22:38:27

    矬题……题意叙述明显错了……上下颠倒了

    #include

    using namespace std;

    int n,u,d,dat[40000],len=0,res=0;

    string str;

    void get(int l,int r,int deep)

    {

    if (deep>u>>d>>str;

    u=min(u,n);

    for (int i=0;str[i]!='\0';i++)

    {

    len++;

    dat[len]=(str[i]=='1');

    }

    get(1,len,n);

    cout

  • 0
    @ 2009-02-26 15:30:53

    这题80分是很少见的!所以我拿80分也不容易!

    忘了把string改成ansistring了,囧

  • 0
    @ 2009-02-15 17:16:22

    MS FBI树

  • 0
    @ 2009-02-12 23:04:49

    ├ 测试数据 01:运行时错误...| 错误号: 216 | 存取非法

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

    ├ 测试数据 03:运行时错误...| 错误号: 216 | 存取非法

    ├ 测试数据 04:答案错误...程序输出比正确答案长

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

    ├ 测试数据 06:运行时错误...| 错误号: 216 | 存取非法

    ├ 测试数据 07:运行时错误...| 错误号: 216 | 存取非法

    ├ 测试数据 08:运行时错误...| 错误号: 216 | 存取非法

    ├ 测试数据 09:运行时错误...| 错误号: 216 | 存取非法

    ├ 测试数据 10:运行时错误...| 错误号: 216 | 存取非法

    白交了一次 比赛时要注意了。

    引用楼下牛:

    注意此题很水

    阴人点在于:

    0

  • 0
    @ 2009-02-09 07:43:14

    真服了~~把树的层数弄倒了居然得了60分~~~数据……

    编译通过...

    ├ 测试数据 01:答案错误... ├ 标准行输出

     ├ 错误行输出

    ├ 测试数据 02:答案错误... ├ 标准行输出

     ├ 错误行输出

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

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

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

    ├ 测试数据 06:答案错误...程序输出比正确答案长

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

    ├ 测试数据 08:答案错误...程序输出比正确答案长

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

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

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

    Unaccepted 有效得分:60 有效耗时:0ms

    改层数以后~

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    FBI树的翻版啊~~注意树是倒着长得(根是第n层 叶是第0层)

  • 0
    @ 2009-02-03 20:51:48

    线段树套一下

    比赛的时候不知道倒着长……

  • 0
    @ 2009-02-03 16:49:27

    分治……

    树是倒着长的!头一次听说……还得我两次才AC……

  • 0
    @ 2009-02-01 11:37:58

    编译通过...

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

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

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

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

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

    ├ 测试数据 06:运行超时|无输出...

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

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

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

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

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

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

    var

    s:array[0..20,1..65536]of ansistring;

    m,n,o,p,q,r:longint;

    function suan(s:ansistring;i:longint):ansistring;

    begin

    if i=1

    then suan:=copy(s,1,length(s)div 2)

    else suan:=copy(s,length(s)div 2+1,length(s)div 2);

    end;

    function work(i,j:longint):longint;

    var

    ss:ansistring;

    begin

    ss:=s;

    if(pos('1',ss)0)and(pos('0',ss)0)

    then exit(1)

    else if pos('1',ss)0

    then exit(2)

    else exit(5);

    end;

    begin

    readln(m);

    readln(n,o);

    readln(s[0,1]);

    for p:=1to m do

    for q:=1to round(exp(p*ln(2)))do

    s[p,q]:=suan(s[p-1,(q+1)div 2],q mod 2);

    if n>m

    then n:=m;

    for p:=m-o downto m-n do

    for q:=1to round(exp(p*ln(2)))do

    r:=r+work(p,q);

    write(r);

    end.

    郁闷!!!!!

    为什么?????

  • 0
    @ 2009-01-30 06:03:15

    1.类似线段树建树的那种递归

    2.注意根节点是第n层

    再就没什么问题了

  • 0
    @ 2009-01-29 17:54:49

    第n层的叶子长度就是2^n,可以把字符串分为每n个一组 计算价值

    最大的价值是 (2^16-1)*5 (32768个0,0到15层)

    #include

    #include

    int value(char*str,int len){

    int num[2]={0},value=1;

    int i;

    for(i=0;in)u=n;

    char str[32769];

    scanf("%s",str);

    int len=strlen(str);

    int i,j;

    int each;

    int total=0;

    for(i=d;i

  • 0
    @ 2009-01-27 20:45:59

    怎一个“阴”字了得!

    一开始理解为“根的层数是0”,0分

    后来理解为“叶的层数是0”,AC……

  • 0
    @ 2009-01-27 20:11:29

    这题真猥琐。。。

    树居然是倒着长的。。0分

    u.d的范围。。。 50分

    我成功把此题通过率降低1%。。。。

  • 0
    @ 2009-01-25 23:07:29

    树为什么是倒着长的!

  • 0
    @ 2009-01-24 13:04:04

    无语,最顶上那层原来是0......

    看来一片60分的和我想的一样

  • 0
    @ 2009-01-23 21:37:53

    90与100的差别在哪。。。

  • 0
    @ 2009-01-23 19:45:44

    #include

    char tree[32768];

    int n,u,d,tot;

    const int value[3]={1,2,5},_2n[16]={1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768};

    int height(int id) {

    int i;

    for(i=0;id>=_2n-1;i++);

    return n-i; //此处若写成i,60分;写成n-i,100分...

    }

    int work(int id) {

    int t,h;

    if(id=d&&h

  • 0
    @ 2009-01-23 12:06:04

    这题目太弄人了,我的AC率呀。。。。。。。。。

  • 0
    @ 2009-01-23 10:47:54

    "100分的关键。。叶子是0层,根是N层。。。。"

    这.........

  • 0
    @ 2009-01-23 10:17:35

    我来解释一下60分和100分。。。

    100分的关键。。叶子是0层,根是N层。。。。

信息

ID
1501
难度
6
分类
树结构 点击显示
标签
递交数
1684
已通过
456
通过率
27%
被复制
2
上传者