题目名称 496. 移动服务
输入输出 service.in/out
难度等级 ★★★
时间限制 1200 ms (1.2 s)
内存限制 128 MiB
测试数据 20
题目来源 Gravatarcqw 于2010-11-10加入
开放分组 全部用户
提交状态
分类标签
动态规划
分享题解
通过:25, 提交:89, 通过率:28.09%
GravatarLGLJ 100 0.209 s 1.46 MiB C++
Gravatarsyzhaoss 100 0.282 s 0.88 MiB C++
Gravatar嗨嗨嗨 100 0.302 s 4.95 MiB C++
GravatarMongo 100 0.339 s 0.76 MiB C++
Gravatar瑆の時間~無盡輪迴·林蔭 100 0.419 s 7.06 MiB C++
Gravatardigital-T 100 0.434 s 0.78 MiB C++
Gravatarcstdio 100 0.538 s 0.96 MiB C++
GravatarHtBest 100 0.554 s 0.62 MiB C++
Gravatar梦那边的美好ET 100 0.698 s 0.62 MiB C++
Gravatar农场主 100 0.701 s 0.76 MiB C++
本题关联比赛
20101110
关于 移动服务 的近10条评论(全部评论)
COGS 评测机是真的快!
本地跑3秒,评测0.5秒
GravatarHtBest
2018-08-20 18:09 3楼
@Ezoi_XY debug吧少年……我当时也debug了一坨……年代久远不记得了,你可以看我的代码
Gravatarcstdio
2013-10-31 20:50 2楼
题目有什么蹊跷吗?我在tyvj交过了,在这就是错几个点,@cstdio 求过法
GravatarEzoi_XY
2013-10-31 14:26 1楼

496. 移动服务

★★★   输入文件:service.in   输出文件:service.out   简单对比
时间限制:1.2 s   内存限制:128 MiB

【问题描述】

一个公司有三个移动服务员,最初分别在位置1,2,3处。

如果某个位置(用一个整数表示)有一个请求,某个员工必须赶到那个地方去。某一时刻只有一个员工能移动,不允许在同样的位置出现两个员工。

从 $p$ 到 $q$ 移动一个员工,需要花费 $c(p,q)$。这个函数不一定对称,但是 $c(p,p)=0$。

给定$n$个请求,请求发生的位置分别为$p_1,p_2,\cdots,p_n$。公司必须按顺序满足所有请求,目标是最小化公司花费,请你帮忙计算这个最小花费。

【输入格式】

第一行有两个整数 $L,N(3≤L≤200,1≤N≤1000)$。$L$ 是位置数,$N$ 是请求数。每个位置从 $1$ 到 $L$ 编号。

下 $L$ 行每行包含 $L$ 个非负整数。第 $i+1$ 行的第 $j$ 个数表示 $c(i,j)$,并且它小于 $2000$。

最后一行包含 $N$ 个数,是请求列表。

【输出格式】

一个数 $M$,表示最小服务花费。

【样例输入】

5 9
0 1 1 1 1
1 0 2 3 2
1 1 0 4 1
2 1 5 0 1
4 2 3 4 0
4 2 4 1 5 4 3 2 1

【样例输入】

5