48 do ma25 5 5 5 5 5 56 5

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

48 do ma25 5 5 5 5 5 56 5

Bài gửi  nhatha527 on Mon Sep 10, 2012 4:19 pm

program LietKe;
const
max = 30;
fi='XNP.INP';
fo='XNP.OUT';
var
x, a: array[1..max] of Integer;
b: array[1..max] of longint;
m, n, i,dem: Integer;
f:text;
kt:boolean;
{===========================================}
procedure NHap;
var f:text;
begin
assign(f,fi);
reset(f);
readln(f,n);
for i:=1 to n do
read(f,a[i]);
readln(f);
close(f);
end;

{===========================================}

procedure xuly;
var tong: longint;
j: integer;
kt: boolean;
begin
FillChar(x, SizeOf(x), 0);
m:=0;
repeat
tong:=0;
for i := 1 to n do
if(x[i]=1)then
tong := tong + a[i];
kt:=true;
for i:=1to m do
if(tong=b[i])then
begin
kt:=false;
break;
end;
if((kt)and(tong<>0))then
begin
m:=m+1;
b[m]:=tong;
end;
i := n;
while (i > 0) and (x[i] = 1) do Dec(i);
if i > 0 then
begin
x[i] := 1;
FillChar(x[i + 1], (n - i) * SizeOf(x[1]), 0);
end;
until i = 0;
end;
{===========================================}
procedure sapxep;
var i, j: integer;
tam: longint;
begin
for i:=1 to m-1 do
for j:=i+1 to m do
if(b[j] begin
tam:=b[i];
b[i]:=b[j];
b[j]:=tam;
end;

end;
{===========================================}
Begin
nhap;
xuly;
sapxep;
assign(f,fo);
rewrite(f);
dem:=1;
kt:=false;
for i:=1 to m do
if(dem<>b[i])then
begin
kt:=true;
break;
end
else
inc(dem);
write(f,dem);
close(f);
End.

nhatha527
Webmaster
Webmaster

Tổng số bài gửi : 60
Join date : 08/10/2011
Age : 20
Đến từ : Lâu đài Kẹo dẻo ^_^

Xem lý lịch thành viên https://www.facebook.com/chong.chamchap

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang


 
Permissions in this forum:
Bạn không có quyền trả lời bài viết