Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

NOIXICH - Nối Xích

Người ta có N đoạn dây xích(N <= 20000), mỗi đoạn dây xích là chuỗi các mắt xích được nối với nhau. Các đoạn dây xích này tách rời nhau. Mỗi đoạn mắt xích có không quá 20000 mắt xích. Bằng cách cắt ra một mắt xích, sau đó hàn lại, ta có thể nối hai dây xích thành một đoạn. Thời gian để cắt và hàn mỗi mắt xích là 1 đơn vị thời gian và được xem là bằng nhau với mọi mắt xích. Nhiêm vụ của bạn là phải nối chúng lại thành một đoạn dây xích duy nhất với thời gian ít nhất( hay số mắt xích bị cắt và hàn lại là ít nhất).

Input

Dữ liệu vào cho trong file văn bản có cấu trúc như sau: Dòng đầu tiên là số N, số đoạn xích. Những dòng tiếp theo ghi N số nguyên dương, số thứ i là số mắt xích có trong đoạn xích thứ i(i <= i <= N) Hai số cạnh nhau trên cùng một dòng cách nhau ít nhất một dấu cách.

Output

Một dòng duy nhất là số đơn vị thời gian mà bạn cần để nối N đoạn xích đã cho.

Example

Input:
3
2 3
4

Output:
2

Được gửi lên bởi:Nguyễn Tuấn Việt Sơn
Ngày:2008-06-11
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ERL GOSU JS-RHINO NODEJS PERL6 PYPY RUST SED VB.NET
Nguồn bài:Sưu Tầm

hide comments
2022-12-22 10:28:29
rác
2021-03-27 01:39:05
MỌI NGƯỜI CÓ BỘ TEST CỦA BÀI NÀY KHÔNG Ạ? CHO E XIN VỚI
2019-12-03 16:39:30
var n,min,count,i,j,sum,tmp:longint;
a:array[1..20000]of longint;
procedure QuickSort(left, right: longint);
var x, i, j, tmp: longint;
begin
if left > right then exit;

// left <= right

x := a[(left + right) div 2];

i:= left;
j:= right;

repeat
while a[i] < x do inc(i);
while x < a[j] do dec(j);
//trao doi
if i <= j then
begin
tmp := a[i];
a[i] := a[j];
a[j] := tmp;
inc(i);
dec(j);
end;

until i > j;

QuickSort(left, j);
QuickSort(i, right);

end;
begin
assign(input,'NOIXICH.INP');reset(input);
assign(output,'NOIXICH.OUT');rewrite(output);
readln(n);
min:=high(min);
count:=0;
sum:=0;
for i:=1 to n do begin read(a[i]);if a[i]<min then min:=a[i];end;
QuickSort(1,n);
while sum<=n-count-1 do begin
count:=count+1;
sum:=sum+a[count];
end;
writeln(n-count);

close(input);
close(output);
end.
2019-09-14 03:09:15
mmm
2019-05-31 12:33:33
Test VD chỉ bị xuống dòng sai thôi mà =)))))
2019-05-27 18:47:36
test ví dụ bị sai cả input lẫn output . địt mẹ đề bài làm ăn như lồn
2018-03-28 10:35:49
hào dơ
2017-02-20 16:20:57
;

4
2016-07-19 10:38:50
f*ck this shit
2016-07-19 10:38:09
fuck
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.