PDA

View Full Version : Bài này giải cách nào đây mấy huynh!!



trongnhan10mit
05-03-2008, 21:07
Cho một dãy số. Hãy tìm tổng của các phần tử sao cho chúng bằng nhau . Sao cho có nhiều cặp nhất.
vidu: 2 3 4 1 5
=> có 3 cặp 2+3=4+1=5.

mr_invincible
05-03-2008, 22:26
Hình như bạn này hỏi 2 lần thì phải???

tuansando
09-03-2008, 22:55
cũng ko bik rõ có phải vầy ko?
for i:=1 to n do
for j:=i to n do
for k:=1 to n do
if (k<>i) and (k<>j) and (i<>j) and a[i]=a[k]+a[j] then
writeln(a[i],' = ',a[k],' + ',a[j]);
readln;
end.

phuclun
09-03-2008, 23:52
cũng ko bik rõ có phải vầy ko?
for i:=1 to n do
for j:=i to n do
for k:=1 to n do
if (k<>i) and (k<>j) and (i<>j) and a[i]=a[k]+a[j] then
write(a[i],' = ',a[k],' + ',a[j]);
readln;
end.

thế tới cho test này bạn làm thế nào nhé
1 2 4 7
chỉ có cách là 1+2+4=7 thôi,ko thể làm theo cách bạn đc,cách bạn là ép buộc nó phải 1 số =tổng 2 số rồi.Như test đầu bạn sẽ ra thế này
5=1+4
5=2+3
Chứ ko phải ra 5=1+4=2+3.
Bài này theo tui nghĩ là tìm tổng của nó trước ,xong tìm ước của tổng đó,từ đó ta giải bài toán ,chia dãy thành 1 số dãy con sao cho tổng của nó đều bằng S{là 1 trong những ước của tổng} hoặc nếu bạn nào trâu bò thì là quay lui,n=10 là khoảng 10 tỷ phép tính-->Máy ko điên ko làm người
Phát biểu linh tinh,có gì sai góp ý giùm.

m2mpro
10-03-2008, 17:05
Dùng vét cạn ( vì mới học có đến đây ) còn lâu thì :D

trongnhan10mit
13-03-2008, 19:15
Anh Phuclun noi dung rui.!! Cách giải của anh là nhanh và tiện nhất,.
thank...