零件分组pascal程序
這題就是把長度排序,長度相等,就把重的放后面,最后看重量有一個地方下降了,就分組加一。
var
tj,n,i,j:longint;
c,w,s:array[0..1000]of longint;
begin
? ? readln(n);
? ? for i:=1 to n do
? ? read(c[i],w[i]);
? ? for i:=1 to n-1 do//要用冒泡,不知道為什么我用快排就錯了
? ? begin
? ? ? ? for j:=i+1 to n do
? ? ? ? if (c[i]>c[j])or(c[i]=c[j])and(w[i]>w[j]) then
? ? ? ? begin
? ? ? ? ? ? c[0]:=c[i];c[i]:=c[j];c[j]:=c[0];
? ? ? ? ? ? w[0]:=w[i];w[i]:=w[j];w[j]:=w[0];
? ? ? ? end;
? ? end;
? ? tj:=0;
? ? for i:=1 to n do
? ? begin
? ? ? ? j:=1;
? ? ? ? while s[j]>w[i] do inc(j);
? ? ? ? if j>tj then inc(tj);
? ? ? ? s[j]:=w[i];
? ? end;
? ? write(tj);
end.
轉載于:https://www.cnblogs.com/YYC-0304/p/9500250.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的零件分组pascal程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 美元汇率pascal程序
- 下一篇: 运输pascal 90分程序