/ Vijos / 题库 / 距离 /

题解

62 条题解

  • 0
    @ 2009-10-31 15:48:35

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    没有秒杀,有点不爽......

  • 0
    @ 2009-10-31 15:45:59

    编译通过...

    ├ 测试数据 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-10-30 22:16:57

    编译通过...

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

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

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

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

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

     ├ 错误行输出

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

     ├ 错误行输出

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

     ├ 错误行输出

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

     ├ 错误行输出

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

     ├ 错误行输出

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

     ├ 错误行输出

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

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

    program P1680;

    var

    i,j,k:longint;

    a,b:string;

    f:array[0..2001,0..2001]of longint;

    function min(a,b,c:longint):longint;

    begin

    min:=a;

    if b

  • 0
    @ 2009-10-30 19:14:06

    居然没有看题解就一次AC了!!!(兴奋中。。。)

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

    我的程序太丑了。。。

    var

    tmp,i,j,k,a1,b1:longint;

    a,b:array[0..2001] of char;

    f:array[0..2001,0..2001] of longint;

    begin

    while not(eoln) do begin inc(a1);read(a[a1]); end;

    readln();

    while not(eoln) do begin inc(b1);read(b[b1]); end;

    readln(k);

    fillchar(f,sizeof(f),255);

    for i:=0 to a1 do f:=k*i;

    for i:=0 to b1 do f[0,i]:=k*i;

    for i:=1 to a1 do

    for j:=1 to b1 do begin

    tmp:=maxlongint;

    if f+k

  • 0
    @ 2009-10-30 10:21:32

    真不敢相信...一次AC了额...

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

    找人教我做这题的加强版..

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1342

    ....

    我好像目前只能过样例也...

  • 0
    @ 2009-10-29 21:26:25

    水水~很健康撒

  • 0
    @ 2009-10-29 20:03:41

    编译通过...

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

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

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

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

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

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

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

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

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

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

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

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

    非常简单的DP,晒下我的程序。

    滚动数组 AC

    #include

    #include

    #include

    using namespace std;

    int dp[3][2001];

    int mn (int a,int b,int c)

    {

    if(a>str2>>k;

    int n=str1.size(),m=str2.size();

    dp[0][0]=0;

    for (j=1;j

  • 0
    @ 2009-10-29 19:27:11

    AC 100 纪念

    虽然是个water版DP题

  • 0
    @ 2009-10-29 13:11:31

    通过人数不断的飙升……

    不过貌似给大家增长信心的目的好像达到了o(∩_∩)o...哈哈

  • 0
    @ 2009-10-29 12:52:44

    分析:好水的dp题

  • 0
    @ 2009-10-29 00:32:04

    居然忘记了边界,可见我之沙茶

  • 0
    @ 2009-10-28 19:17:40

    是经典dp

  • 0
    @ 2009-10-28 18:38:12

    编译通过...

    ├ 测试数据 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-10-28 16:37:21

    我这道题就遭在一个函数min上..

    一开始 exit写成writeln

    后头一只输出33 原来写成max了

    var s1,s2:ansistring;

    l1,l2,x:longint;

    f:array[0..2000,0..2000] of longint;

    g:array[1..2000,1..2000] of longint;

    i,j:longint;

    function min(v1,v2:longint):longint;

    begin

    if v1>v2 then exit(v2);

    exit(v1);

    end;

    begin

    readln(s1);

    readln(s2);

    readln(x);

    l1:=length(s1);

    l2:=length(s2);

    for i:=1 to l1 do

    f:=i*x;

    for i:=1 to l2 do

    f[0,i]:=i*x;

    f[0,0]:=0;

    for i:=1 to l1 do

    for j:=1 to l2 do

    f:=min(min(f+x,f+abs(ord(s1[i])-ord(s2[j]))),f+x);

    writeln(f[l1,l2]);

    end.

  • 0
    @ 2009-10-28 10:15:08

    无奈 我的第一题

    我受不了了 提交了5次 ,每一次在本机都通过了样例数据

    第一次 没发现问题

    第二次 发现有一个i写成了1

    第三次 发现变量声明成了200而不是2000

    第四次 发现用的是局部变量。。。

    第五次 终于。。

    不过还好 这不是考试

  • 0
    @ 2009-10-27 21:18:40

    Flag   

    题号   P1680

    类型(?)   动态规划

    通过   137人

    提交   225次

    通过率   61%

    难度   1 囧

  • 0
    @ 2009-10-27 20:25:54

    我交的题目居然不是我自己测的

    杯具啊

  • 0
    @ 2009-10-27 16:57:41

    果然水啊

    连我这样的巨菜都找到了信心

  • 0
    @ 2009-10-27 14:08:02

    Flag   Accepted

    题号   P1680

    类型(?)   动态规划

    通过   110人

    提交   172次

    通过率   64%

    难度   1

    好囧~ ~110

  • 0
    @ 2009-10-27 10:43:12

    我的思路是,

    假设字符与空格搭配距离为0,则字符与字符搭配距离为原距离减去2*k;

    最后结果再加上2*(m+n)就ok了

信息

ID
1680
难度
3
分类
动态规划 | 动态规划 | LCS 点击显示
标签
(无)
递交数
1644
已通过
795
通过率
48%
被复制
5
上传者