PTIT135A spoj PTIT – Đỗ Xe
Nguồn đề bài: http://www.spoj.com/PTIT/problems/PTIT135A/ 1. Đề bài PTIT135A spoj Luka là ông chủ của 3 chiếc xe tải. Hàng đêm, anh thuê lái xe đến mua nấm ở xưởng nấm. Luka đưa trước tiền cho 3 lái xe của mình. Giá tiền đậu xe tại xưởng nấm như sau: Nếu có 1 xe đậu thì lái xe ...
Nguồn đề bài: http://www.spoj.com/PTIT/problems/PTIT135A/
1. Đề bài PTIT135A spoj
Luka là ông chủ của 3 chiếc xe tải. Hàng đêm, anh thuê lái xe đến mua nấm ở xưởng nấm. Luka đưa trước tiền cho 3 lái xe của mình. Giá tiền đậu xe tại xưởng nấm như sau:
Nếu có 1 xe đậu thì lái xe trả A đồng/phút.
Nếu có 2 xe đậu thì mỗi lái xe trả B đồng/phút.
Nếu có 3 xe đậu thì mỗi lái xe trả C đồng/phút.
Cho biết thời gian đến và đi của mỗi xe. Hãy xác định xem Luka cần phải đưa bao nhiêu tiền cho các lái xe của mình.
Input
3 số a, b, c (1 <= c <= b <= a <= 100). 3 dòng tiếp theo là thời gian đến và đi của từng xe. Các giá trị thời gian đều <= 100 phút.
Output
Số tiền mà Luka cần đưa cho 3 lái xe.
Example
Input1:
5 3 1
1 6
3 5
2 8
Ouput1:
33
Input2:
10 8 6
15 30
25 50
70 80
Ouput2:
480
2.Code tham khảo PTIT135A spoj
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | const fi='; nmax=100; type data=longint; var f:text; a:array[1..3] of data; u,v,i,res:data; S:array[0..nmax] of data; begin assign(f,fi); reset(f); readln(f,a[1],a[2],a[3]); fillchar(s,sizeof(s),0); for i:=1 to 3 do begin readln(f,u,v); s[u]:=s[u]+1; s[v]:=s[v]-1; end; s[0]:=0; for i:=1 to 100 do s[i]:=s[i]+s[i-1]; res:=0; for i:=1 to 100 do if s[i]<>0 then res:=res+a[s[i]]*s[i]; write(res); close(f); end. |