51 条题解

  • -2
    @ 2016-06-06 15:54:48

    这应该是原题:
    邮政货车
    (vans.cpp/c/pas)
    【题目描述】vans.pas
    郊区呈矩形,有N(N<=3)条东西方向的街道和M(M<=126)条南北方向的街道.在交区的西北角有一个邮局。
    如N=3,M=4 时,郊区如右图所示,圆点表示邮局,直线表示街道。
    每天邮政卡车从邮局出发,每个交叉路口(包括边界和四角)经过且只经过一次,最终回到邮局。现在邮局希望知道邮政货车不同的行驶路线共有几种。

    【输入文件】 vans.in
    一行,包括两个数字N和M。输入数据保证货车一定能够完成任务并回到邮局。

    【输出文件】vans.out
    一个数字,为邮政货车不同行驶路线的数量。

    【输入输出样例】
    vans.in vans.out

    3 4 4

  • -2
    @ 2016-02-21 20:40:59

    编译成功

    Free Pascal Compiler version 3.0.0 [2015/11/16] for i386
    Copyright (c) 1993-2015 by Florian Klaempfl and others
    Target OS: Win32 for i386
    Compiling foo.pas
    foo.pas(16,5) Note: Local variable "len" not used
    foo.pas(16,9) Note: Local variable "now" not used
    foo.pas(12,5) Note: Local variable "j" not used
    Linking foo.exe
    83 lines compiled, 0.1 sec, 28608 bytes code, 1268 bytes data
    3 note(s) issued

    测试数据 #0: Accepted, time = 0 ms, mem = 1196 KiB, score = 10

    测试数据 #1: Accepted, time = 0 ms, mem = 1196 KiB, score = 10

    测试数据 #2: Accepted, time = 15 ms, mem = 1200 KiB, score = 10

    测试数据 #3: Accepted, time = 0 ms, mem = 1200 KiB, score = 10

    测试数据 #4: Accepted, time = 0 ms, mem = 1196 KiB, score = 10

    测试数据 #5: Accepted, time = 0 ms, mem = 1196 KiB, score = 10

    测试数据 #6: Accepted, time = 0 ms, mem = 1200 KiB, score = 10

    测试数据 #7: Accepted, time = 0 ms, mem = 1200 KiB, score = 10

    测试数据 #8: Accepted, time = 0 ms, mem = 1200 KiB, score = 10

    测试数据 #9: Accepted, time = 15 ms, mem = 1196 KiB, score = 10

    Accepted, time = 30 ms, mem = 1200 KiB, score = 100

    没想到压位高精加减法居然这么快……也是醉了

    ###Pascal Code
    program p1435;
    const
    mo=100000000;
    type
    ar=array[1..100] of longint;
    bignum=record //高精数
    len:longint; //高精数的长度
    bit:ar; //高精度的位
    end;
    var
    f:array[1..1000] of bignum;
    i,n,c,t:longint;

    //中间高精度加减法就抄模版吧,就不贴了(其实为了防盗……)

    begin
    //assign(input,'input.txt');
    //reset(input);

    readln(n);
    for i:=1 to n do f[i].len:=1;
    f[1].bit[1]:=0; //赋初值
    f[2].bit[1]:=2;
    f[3].bit[1]:=4;
    f[4].bit[1]:=12;
    for i:=5 to n do
    begin
    plus(i,i-1); //plus 为高精加
    plus(i,i-1);
    plus(i,i-2);
    plus(i,i-2);
    plus(i,i-4);
    minus(i,i-3); //minus 为高精减
    minus(i,i-3);
    end;
    write(f[n].bit[f[n].len]);
    for i:=f[n].len-1 downto 1 do //pascal 好像没有补足空位的方法,只能手动补了,还望大神指教
    begin
    c:=0;
    t:=f[n].bit[i];
    while t>0 do
    begin
    inc(c);
    t:=t div 10;
    end;
    for t:=1 to 8-c do write('0');
    write(f[n].bit[i]);
    end;
    writeln;
    end.

    • @ 2016-10-31 20:07:14

      楼主你为了防盗是什么意思,不都知道吗

  • -2
    @ 2014-06-23 20:43:31

    题目样例有错?

  • -2
    @ 2009-08-17 17:22:40

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    一个下午的成果!

    • @ 2016-10-31 20:08:33

      不上代码装什么B,不就是递推式加压位高进度加减法吗

  • -2
    @ 2009-10-04 21:29:30

    状态压缩+递推+高精度~

    编程难度不高~

    主要是考思考的题目

    压十万位秒杀

  • -2
    @ 2009-08-07 20:10:47

    编译通过...

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

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

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

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

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

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

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

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

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

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

    曾经没思路。

    今天

    推了很久,终于推出来了

    很囧, 居然打错了字,

    还以为递推式写错了。

  • -2
    @ 2009-07-29 17:42:40

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    高精度练习……

    输出判断出错了……两次才AC……

  • -2
    @ 2009-06-17 19:19:43

    我估计有人抄代码。rate太高。此题不水。

  • -2
    @ 2009-05-27 10:41:43

    n=1000的答案:

    107804506292289350371048477751462318472

    338875681229430815191043941667558989810

    997595390590112331971628390414468994120

    682970273501713146998173127159558033474

    461443895512036420352593950998937505267

    543407832546722338553648282026544865299

    065441178730028962054017194481457835903

    530891684124097165346656344943649706816

    334537991246202605553833095654700321948

    501170791416701579443451358779073244356

    826563290108152

  • -2
    @ 2008-11-07 15:20:27

    实话说这题是难做的,能不看题解做出的人已经算很有实力了。。说实话大家有几个是靠自己做出来了?

  • -3
    @ 2017-04-08 09:51:39

    666

信息

ID
1435
难度
5
分类
动态规划 | 状态压缩DP递推 点击显示
标签
(无)
递交数
1209
已通过
433
通过率
36%
被复制
6
上传者