Giải giùm mình chương trình free pascal với Có N gói hàng với trọng lượng P1, P2, …, PN. Người ta cần đóng những gói hàng này vào những chiếc hộp cứng

Giải giùm mình chương trình free pascal với
Có N gói hàng với trọng lượng P1, P2, …, PN. Người ta cần đóng những gói hàng này vào những chiếc hộp cứng để gửi, biết rằng chi phí vận chuyển chỉ tính phí đồng giá theo từng hộp và nhận những hộp hàng trọng lượng không quá M thỏa mãn Pi ≤ M (i=1,2, …,N).
Yêu cầu: Em hãy lập trình tính số hộp để đóng n gói hàng trên với chi phí ít nhất.

0 bình luận về “Giải giùm mình chương trình free pascal với Có N gói hàng với trọng lượng P1, P2, …, PN. Người ta cần đóng những gói hàng này vào những chiếc hộp cứng”

  1. program ct;

    uses crt;

    var P:array[1..1000] of integer;

          i,n,M,h:integer;

    begin clrscr;

       write(‘Nhap so goi hang: ‘); readln(n);

       for i:=1 to n do

         begin

            write(‘Nhap trong luong goi hang thu ‘,i,’: ‘); readln(P[i]);

         end;

       write(‘Nhap trong luong M thoa man: ‘); readln(M);

         h:=0;

       for i:=1 to n do

         if P[i]<=M then h:=h+1;

       writeln(‘Can ‘,h,’ hop de dong goi ‘,n,’ goi hang tren voi chi phi it nhat’);

    readln;

    end.

    Học tốt!

    Bình luận
  2. uses crt;
    var a,l,t,f:array[0..100000]of longint; i,n,j,kt,m,x,dem:longint;
    begin
    clrscr;
       write(‘n=’);readln(n);
       for i:=1 to n do
          begin
             write(‘P[‘,i,’]=’);readln(a[i]);
          end;
       write(‘m=’);readln(m);
       l[i]:=a[i]; t[i]:=i;
             for j:=1 to i-1 do if a[j]+l[i]<=10 then dem:=1;
       for i:=n-1 downto 1 do
          begin
             for j:=i+1 to n do
                if (a[i]<=m)and(a[i]+l[j]<=m)and(l[i]<a[i]+l[j])and(f[j]=0) then
                   begin
                      f[t[i]]:=0; l[i]:=l[j]+a[i]; t[i]:=j; f[j]:=1;
                   end;
             kt:=0;
             if l[i]=0 then begin l[i]:=a[i]; t[i]:=i; end;
             for j:=1 to i-1 do if a[j]+l[i]<=10 then kt:=1;
             if kt=0 then inc(dem);
          end;
       writeln(dem);
    readln
    end.

    giai-gium-minh-chuong-trinh-free-pascal-voi-co-n-goi-hang-voi-trong-luong-p1-p2-pn-nguoi-ta-can

    Bình luận

Viết một bình luận