万卷网 > 题目详情
题型:编程题

维修任务

在一条商业街上,有 100个店铺,店铺从左到右编号为 1 到 100。工人从店铺 x 移动到 y 发生的移动距离为 ∣y - x∣。

现在需要完成 n 个修理任务。其中第 i 个任务要求工人移动到店铺 ai,报修任务分两类,用 L 表示任务分配给小李,用 R 表示任务分配给小任。必须按照报修的顺序来完成这些任务。

请计算,完成所有修理任务后,两位工人的总移动的总距离。工人最开始的位置可以按照最理想的情况安排。

时间限制:1000ms,内存限制:256MB

输入格式

第一行:一个整数 n,表示搬运次数;

接下来 n 行,每行一个整数 ai 表示商店位置,一个字符 Si 表示哪位工人完成。

输出格式

输出所有任务完成时的最小总距离。


输入样例#1

4
3 L
6 R
9 L
2 R

输出样例#1

10

输入样例#2

3
2 L
2 L
99 L

输出样例#2

97

输入样例#3

8
22 L
75 L
26 R
45 R
72 R
81 R
47 L
29 L

输出样例#3

154

数据范围:

1≤N≤100,1≤ai≤100,si∈{L, R}。

更新时间:2025-10-29 13:47:51 |
【知识点】 电子学会C/C++二级

相似题推荐

单选题

执行以下C++代码,输入`65`后,输出结果是?( ) 

int grade; 
cin >> grade;
 if(grade >= 90) 
     cout << "优秀"; 
else if(grade >= 70) 
    cout << "良好"; 
else if(grade >= 60) 
    cout << "及格"; 
else 
    cout << "不及格";
A.

优秀

B.

良好

C.

及格

D.

不及格

2026-07-10
判断题

C++中,数组的长度可以在定义后随时修改。( )

A.正确 B.错误
2026-07-10
单选题

以下C++数组定义中,正确的是?( )

A.

整数 arr[4] = {1,2,3,4,5};

B.

整数 arr[] = {5,4,3,2,1};

C.

int n=-5;内通 arr[n];

D.

整数 arr[5] = ;

2026-07-10
编程题

查找特定值

2026-07-10
判断题

C++中,将double类型赋值给int类型变量时,会自动进行类型转换,不会丢失数据。( )

A.正确 B.错误
2026-07-10
公众号
客服 反馈
顶部