- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
语境
我正在创建一个程序来简化人与人之间的费用共享。费用有:
max
为
maxHeap
的最大元素,而
min
为
minHeap
的最小元素。
max.person
和
min.person
是分别持有
max
和
min
债务的人。
while(not done) do:
new transaction.from(max.person).to(min.person)
if(max + min = 0) then: //remove both
maxHeap.removeMax
minHeap.removeMin
else if (max + min < 0) then: //keep in minHeap
minHeap.increaseKey(min).by(max)
maxHeap.removeMax
else //move min to maxHeap
maxHeap.decreaseKey(max).by(|min|)
最佳答案
我已经编辑了答案,也可以解决一个接收者可能从多人接收钱而不仅仅是从一个人接收钱的情况。看到最下面。
有趣的问题-必须对其进行编码。此处的伪数据和数据,如Dyalog APL所做的那样。
通常,确保最佳状态的唯一方法是使用蛮力。对于您的问题,当参与者人数大约为12个或更少时,此方法效果很好:
┌──┬──┬──┬──┬───┬───┬─────┬──────┬───────┬─────────┬──────────┬───────────┬─────────────┬──────────────┬─────────────────┐
│!1│!2│!3│!4│!5 │!6 │!7 │!8 │!9 │!10 │!11 │!12 │!13 │!14 │!15 │
├──┼──┼──┼──┼───┼───┼─────┼──────┼───────┼─────────┼──────────┼───────────┼─────────────┼──────────────┼─────────────────┤
│1 │2 │6 │24│120│720│5,040│40,320│362,880│3,628,800│39,916,800│479,001,600│6,227,020,800│87,178,291,200│1,307,674,368,000│
└──┴──┴──┴──┴───┴───┴─────┴──────┴───────┴─────────┴──────────┴───────────┴─────────────┴──────────────┴─────────────────┘
The shares that the contributors have to pay for a certain expense do not necessarily have to be equal.
┌──────────┬───┬───┬───┬───┬─────┐
│Guy │1 │2 │3 │4 │Total│
├──────────┼───┼───┼───┼───┼─────┤
│Should pay│100│100│100│100│400 │
├──────────┼───┼───┼───┼───┼─────┤
│Payed │0 │0 │0 │400│400 │
└──────────┴───┴───┴───┴───┴─────┘
1 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬──────┬──────┬──────┬──────┬─────┬────────┐
│Guy # │1 │2 │3 │4 │Total│Turnover│
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Should pay │100 │100 │100 │100 │400 │ │
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Has paid │0 │0 │0 │400 │400 │ │
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Gets from the one to left│0.00 │100.00│200.00│300.00│ │600 │
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Pays to the one to right │100.00│200.00│300.00│0.00 │ │600 │
└─────────────────────────┴──────┴──────┴──────┴──────┴─────┴────────┘
┌──────────┬───┬───┬───┬───┬─────┐
│Guy │1 │2 │3 │4 │Total│
├──────────┼───┼───┼───┼───┼─────┤
│Should pay│100│100│100│100│400 │
├──────────┼───┼───┼───┼───┼─────┤
│Payed │0 │100│0 │300│400 │
└──────────┴───┴───┴───┴───┴─────┘
3 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬──────┬──────┬──────┬────┬─────┬────────┐
│Guy # │1 │3 │4 │2 │Total│Turnover│
├─────────────────────────┼──────┼──────┼──────┼────┼─────┼────────┤
│Should pay │100 │100 │100 │100 │400 │ │
├─────────────────────────┼──────┼──────┼──────┼────┼─────┼────────┤
│Has paid │0 │0 │300 │100 │400 │ │
├─────────────────────────┼──────┼──────┼──────┼────┼─────┼────────┤
│Gets from the one to left│0.00 │100.00│200.00│0.00│ │300 │
├─────────────────────────┼──────┼──────┼──────┼────┼─────┼────────┤
│Pays to the one to right │100.00│200.00│0.00 │0.00│ │300 │
└─────────────────────────┴──────┴──────┴──────┴────┴─────┴────────┘
Worst solution:
┌─────────────────────────┬──────┬──────┬──────┬──────┬─────┬────────┐
│Guy # │1 │2 │4 │3 │Total│Turnover│
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Should pay │100 │100 │100 │100 │400 │ │
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Has paid │0 │100 │300 │0 │400 │ │
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Gets from the one to left│100.00│200.00│200.00│0.00 │ │500 │
├─────────────────────────┼──────┼──────┼──────┼──────┼─────┼────────┤
│Pays to the one to right │200.00│200.00│0.00 │100.00│ │500 │
└─────────────────────────┴──────┴──────┴──────┴──────┴─────┴────────┘
I would like to minimize the excess amount of money a person receives beyond what he or she actually is owed.
┌──────────┬──┬──┬──┬──┬──┬──┬──┬──┬─────┐
│Guy │1 │2 │3 │4 │5 │6 │7 │8 │Total│
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Should pay│10│10│10│10│10│10│10│10│80 │
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Payed │0 │0 │0 │0 │0 │0 │0 │80│80 │
└──────────┴──┴──┴──┴──┴──┴──┴──┴──┴─────┘
1 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬────────┐
│Guy # │1 │2 │3 │4 │5 │6 │7 │8 │Total│Turnover│
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼────────┤
│Should pay │10 │10 │10 │10 │10 │10 │10 │10 │80 │ │
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼────────┤
│Has paid │0 │0 │0 │0 │0 │0 │0 │80 │80 │ │
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼────────┤
│Gets from the one to left│0.00 │10.00│20.00│30.00│40.00│50.00│60.00│70.00│ │280 │
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼────────┤
│Pays to the one to right │10.00│20.00│30.00│40.00│50.00│60.00│70.00│0.00 │ │280 │
└─────────────────────────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴────────┘
┌──────────┬──┬──┬──┬──┬──┬──┬──┬──┬─────┐
│Guy │1 │2 │3 │4 │5 │6 │7 │8 │Total│
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Should pay│10│25│12│18│16│10│18│15│124 │
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Payed │0 │25│0 │18│0 │10│0 │71│124 │
└──────────┴──┴──┴──┴──┴──┴──┴──┴──┴─────┘
97 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬─────┬─────┬─────┬─────┬─────┬────┬────┬────┬─────┬────────┐
│Guy # │1 │3 │5 │7 │8 │2 │4 │6 │Total│Turnover│
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Should pay │10 │12 │16 │18 │15 │25 │18 │10 │124 │ │
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Has paid │0 │0 │0 │0 │71 │25 │18 │10 │124 │ │
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Gets from the one to left│0.00 │10.00│22.00│38.00│56.00│0.00│0.00│0.00│ │126 │
├─────────────────────────┼─────┼─────┼─────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Pays to the one to right │10.00│22.00│38.00│56.00│0.00 │0.00│0.00│0.00│ │126 │
└─────────────────────────┴─────┴─────┴─────┴─────┴─────┴────┴────┴────┴─────┴────────┘
┌──────────┬──┬──┬──┬──┬──┬──┬──┬──┬─────┐
│Guy │1 │2 │3 │4 │5 │6 │7 │8 │Total│
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Should pay│10│25│12│18│16│10│18│15│124 │
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Payed │17│20│10│19│10│20│16│12│124 │
└──────────┴──┴──┴──┴──┴──┴──┴──┴──┴─────┘
67 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬────┬────┬────┬────┬─────┬─────┬────┬────┬─────┬────────┐
│Guy # │1 │3 │4 │8 │5 │6 │7 │2 │Total│Turnover│
├─────────────────────────┼────┼────┼────┼────┼─────┼─────┼────┼────┼─────┼────────┤
│Should pay │10 │12 │18 │15 │16 │10 │18 │25 │124 │ │
├─────────────────────────┼────┼────┼────┼────┼─────┼─────┼────┼────┼─────┼────────┤
│Has paid │17 │10 │19 │12 │10 │20 │16 │20 │124 │ │
├─────────────────────────┼────┼────┼────┼────┼─────┼─────┼────┼────┼─────┼────────┤
│Gets from the one to left│7.00│0.00│2.00│1.00│4.00 │10.00│0.00│2.00│ │26 │
├─────────────────────────┼────┼────┼────┼────┼─────┼─────┼────┼────┼─────┼────────┤
│Pays to the one to right │0.00│2.00│1.00│4.00│10.00│0.00 │2.00│7.00│ │26 │
└─────────────────────────┴────┴────┴────┴────┴─────┴─────┴────┴────┴─────┴────────┘
┌──────────┬──┬──┬──┬──┬──┬──┬──┬──┬─────┐
│Guy │1 │2 │3 │4 │5 │6 │7 │8 │Total│
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Should pay│10│10│10│10│10│10│10│10│80 │
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤
│Payed │7 │20│10│5 │10│10│6 │12│80 │
└──────────┴──┴──┴──┴──┴──┴──┴──┴──┴─────┘
54 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬────┬────┬────┬─────┬─────┬────┬────┬────┬─────┬────────┐
│Guy # │1 │8 │7 │4 │2 │3 │5 │6 │Total│Turnover│
├─────────────────────────┼────┼────┼────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Should pay │10 │10 │10 │10 │10 │10 │10 │10 │80 │ │
├─────────────────────────┼────┼────┼────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Has paid │7 │12 │6 │5 │20 │10 │10 │10 │80 │ │
├─────────────────────────┼────┼────┼────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Gets from the one to left│0.00│3.00│1.00│5.00 │10.00│0.00│0.00│0.00│ │19 │
├─────────────────────────┼────┼────┼────┼─────┼─────┼────┼────┼────┼─────┼────────┤
│Pays to the one to right │3.00│1.00│5.00│10.00│0.00 │0.00│0.00│0.00│ │19 │
└─────────────────────────┴────┴────┴────┴─────┴─────┴────┴────┴────┴─────┴────────┘
1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4
2 2 3 3 4 4 1 1 3 3 4 4 1 1 2 2 4 4 1 1 2 2 3 3
3 4 2 4 2 3 3 4 1 4 1 3 2 4 1 4 1 2 2 3 1 3 1 2
4 3 4 2 3 2 4 3 4 1 3 1 4 2 4 1 2 1 3 2 3 1 2 1
// NOTE: The data is written as arrays
// For example "0 0 0 0" implies a 4-element array (vector) of integers
// Of course there may be other number of participants ("guys"),
// then we need "other-element" arrays, for example 7-element ones
// The code below may require additional looping
ToPay = 100 100 100 100 // Topmost example in this answer
HasPayed = 0 0 0 400 // Ditto
// Calculate debt
// This probably requires a loop from 1...4
Debt[n] = ToPay[n] - HasPayed[n] // Debt is now: 100 100 100 -300
smallest = 9999999 // Sufficiently big initial value
:For Row :In [each permutation of (1 2 3 4) // Row is now for example: 2 4 3 1
Test = Debt[Row] // Test is now for example: 100 -300 100 100
Accu = [4-element vector of zeroes]
Accu[1] = Row[1]
minimum = Row[1]
s = 2
:Repeat
Accu[s] = Accu[s-1] + Row[s]
minimum = min(minimum, Accu[s]) // We simply grab the smalles element in Accu
s += 1
:Until (s > 4)
// As this is ready, Accu may contain eg. 100 -200 -100 0
// and minimum would then contain -200
sum = 0
t = 1
:Repeat
Accu[t] -= minimum
sum += Accu[t]
t += 1
:Until (t > 4)
// When ready, Accu would be eg. 300 0 100 200
// and sum would be 300+0+100+200, ie. 600
:If (sum < smallest)
[store Row as best so far, for example into "BestRow"]
[store Accu, for example into BestAccu"]
smallest = sum
:End
:End
48 96 144 144 240 240 480 336 672 432 768 912 960 768 1296 864 1392 1104 1200 1056 1488 1488 1488 1200 1344 1152 1776 1056 1344 1056 1152 1152 1344 768 1104 768 1056 720 912 480 672 528 528 240 576 288 432 192 288 144 240 48 96 48
┌──────────┬──┬──┬──┬──┬──┬──┬─────┐
│Guy │1 │2 │3 │4 │5 │6 │Total│
├──────────┼──┼──┼──┼──┼──┼──┼─────┤
│Should pay│10│10│20│30│10│20│100 │
├──────────┼──┼──┼──┼──┼──┼──┼─────┤
│Payed │35│0 │25│0 │0 │40│100 │
└──────────┴──┴──┴──┴──┴──┴──┴─────┘
22 solutions with unique transfer sums. Best solution:
┌─────────────────────────┬──┬──┬──┬──┬──┬──┬─────┬────────┐
│Guy # │1 │3 │2 │5 │6 │4 │Total│Turnover│
├─────────────────────────┼──┼──┼──┼──┼──┼──┼─────┼────────┤
│Should pay │10│20│10│10│20│30│100 │ │
├─────────────────────────┼──┼──┼──┼──┼──┼──┼─────┼────────┤
│Has paid │35│25│0 │0 │40│0 │100 │ │
├─────────────────────────┼──┼──┼──┼──┼──┼──┼─────┼────────┤
│Gets from the one to left│30│5 │0 │10│20│0 │ │65 │
├─────────────────────────┼──┼──┼──┼──┼──┼──┼─────┼────────┤
│Pays to the one to right │5 │0 │10│20│0 │30│ │65 │
└─────────────────────────┴──┴──┴──┴──┴──┴──┴─────┴────────┘
┌───┬──┬──┬──┬───┬──┐
│-25│-5│10│10│-20│30│
└───┴──┴──┴──┴───┴──┘
┌──┬─┬─┬──┬──┬─┐
│30│5│0│10│20│0│
└──┴─┴─┴──┴──┴─┘
┌─┬─┬─┬─┬─┬─┐
│0│0│1│1│0│1│
└─┴─┴─┴─┴─┴─┘
┌──────────┬──┬──┬──┬──┬──┬──┐
│Guy │1 │3 │2 │5 │6 │4 │
├──────────┼──┼──┼──┼──┼──┼──┤
│Should pay│10│20│10│10│20│30│
├──────────┼──┼──┼──┼──┼──┼──┤
│Payed │35│25│0 │0 │40│0 │
├──────────┼──┼──┼──┼──┼──┼──┤
│Pays to │3 │ │6 │6 │ │1 │
├──────────┼──┼──┼──┼──┼──┼──┤
│Amount │5 │ │10│10│ │30│
└──────────┴──┴──┴──┴──┴──┴──┘
┌──────────┬──┬──┬──┬─┬─┬──┬──┬──┬─────┐ ┌───────┬─┬─┬──┬──┬─┬─┬──┬──┐
│Guy │1 │2 │3 │4│5│6 │7 │8 │Total│ │Guy │1│5│6 │8 │2│4│7 │3 │
├──────────┼──┼──┼──┼─┼─┼──┼──┼──┼─────┤ ├───────┼─┼─┼──┼──┼─┼─┼──┼──┤
│Should pay│7 │11│13│8│5│10│12│14│80 │ │Pays to│ │2│2 │2 │ │1│1 │1 │
├──────────┼──┼──┼──┼─┼─┼──┼──┼──┼─────┤ ├───────┼─┼─┼──┼──┼─┼─┼──┼──┤
│Payed │40│40│0 │0│0│0 │0 │0 │80 │ │Amount │ │5│10│14│ │8│12│13│
└──────────┴──┴──┴──┴─┴─┴──┴──┴──┴─────┘ └───────┴─┴─┴──┴──┴─┴─┴──┴──┘
┌──────────┬──┬───┬──┬──┬──┬──┬──┬──┬──┬──┬─────┐ ┌───────┬─┬──┬──┬──┬──┬──┬──┬─┬──┬─┐
│Guy │1 │2 │3 │4 │5 │6 │7 │8 │9 │10│Total│ │Guy │1│3 │7 │4 │10│6 │8 │2│5 │9│
├──────────┼──┼───┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤ ├───────┼─┼──┼──┼──┼──┼──┼──┼─┼──┼─┤
│Should pay│10│10 │10│12│10│19│11│33│6 │12│133 │ │Pays to│2│2 │2 │2 │2 │2 │2 │ │9 │1│
├──────────┼──┼───┼──┼──┼──┼──┼──┼──┼──┼──┼─────┤ ├───────┼─┼──┼──┼──┼──┼──┼──┼─┼──┼─┤
│Payed │5 │112│0 │0 │0 │1 │0 │0 │15│0 │133 │ │Amount │6│10│11│12│12│18│33│ │10│1│
└──────────┴──┴───┴──┴──┴──┴──┴──┴──┴──┴──┴─────┘ └───────┴─┴──┴──┴──┴──┴──┴──┴─┴──┴─┘
┌──────────┬──┬──┬──┬──┬──┬──┬──┬──┬─┬──┬─────┐ ┌───────┬──┬──┬─┬─┬─┬─┬─┬──┬──┬─┐
│Guy │1 │2 │3 │4 │5 │6 │7 │8 │9│10│Total│ │Guy │1 │10│4│9│5│3│6│7 │8 │2│
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─┼──┼─────┤ ├───────┼──┼──┼─┼─┼─┼─┼─┼──┼──┼─┤
│Should pay│10│10│5 │12│10│19│11│33│6│12│128 │ │Pays to│10│ │9│5│3│ │2│2 │2 │ │
├──────────┼──┼──┼──┼──┼──┼──┼──┼──┼─┼──┼─────┤ ├───────┼──┼──┼─┼─┼─┼─┼─┼──┼──┼─┤
│Payed │7 │50│10│10│6 │12│1 │10│7│15│128 │ │Amount │3 │ │2│1│5│ │7│10│23│ │
└──────────┴──┴──┴──┴──┴──┴──┴──┴──┴─┴──┴─────┘ └───────┴──┴──┴─┴─┴─┴─┴─┴──┴──┴─┘
关于algorithm - 有效分担费用后偿还债务: max 1 transaction per person,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37162443/
快速且可能简单的 Lambda 问题: 我有一家有评论的餐厅。我想查询具有以下内容的那个: 最大(平均评分) 和 Max(ReviewCount) 和 Max(NewestReviewDate) 和
在尝试使用 C++17 折叠表达式时,我尝试实现 max sizeof ,其中结果是类型 sizeof 的最大值。我有一个使用变量和 lambda 的丑陋折叠版本,但我想不出一种使用折叠表达式和 st
我目前正在使用 C 并遇到了一些我觉得有趣的东西,但似乎在这里找不到任何类似的东西。 我正在为数组(大小 1000000)静态分配内存。我知道这相当大并且有可能引起问题。但是,使用 10^6 不会出现
我有一个具有 max-height 的 div 和其中的图像,应该使用 max-width:100% 和 max-height:100%。在 Chromium 中,这是可行的,但 Firefox 仅使
我有一个最大高度的 div 和里面的一个图像,它应该使用最大宽度:100% 和最大高度:100%。在 Chromium 中,这是可行的,但 Firefox 仅使用最大宽度而忽略最大高度。 div#ov
在一本在线 awk 手册中我找到了例子awk '{ if (NF > max) max = NF } END { print max }' 该程序打印任何输入行上的最大字段数。但我不明白 awk 如何
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在制作一个非循环图数据库。 表 Material (id_item,id_collection,...)主键(id_item,id_collection) (item可以是collection本身
我有以下两个表。 1.电影详情(电影ID、电影名称、评分、票数、年份) 2.电影类型(Movie-ID,Genre) 我正在使用以下查询来执行连接并获得每个评分最高的电影流派。 select Movi
我有一个查询,我想返回 idevent 中给定传感器 ID (sensorID) 范围内的最高 ID 值,但是查询没有返回最高值。 我运行查询时减去 max() 语句的结果: mysql> SELEC
SUM(MAX() + MAX()) 有正确的方法吗? 这是我一直在努力做的事情 SELECT SUM(MAX(account.BALANCE1) + MAX(account.BALANCE2))
这个问题类似于CSS media queries: max-width OR max-height , 但由于我的代表不够高,我无法在回复中添加评论(问题),我想在原始问题中添加。 与其他主题中的发帖
Jon Skeet今天报告(source): Math.Max(1f, float.NaN) == NaN new[] { 1f, float.NaN }.Max() == 1f 为什么? 编辑:双倍
这个问题已经有答案了: Java 8 stream's .min() and .max(): why does this compile? (5 个回答) 已关闭 7 年前。 我正在学习1z0-809
我在处理一些数据库记录时遇到了一些挑战。 我需要为特定列获取具有 MAX 值的行,并且这些记录必须介于两个时间戳值之间。 这是SQL查询 SELECT id, MAX(amount), created
我想在媒体查询中使用 AND 条件。我使用了下面的代码,但是没有用 @media screen and (max-width: 995px AND max-height: 700px) { } 最佳答
在编写 CSS 媒体查询时,有什么方法可以用“或”逻辑指定多个条件吗? 我正在尝试做这样的事情: /* This doesn't work */ @media screen and (max-widt
我对仅使用 max(list array) 和 np.max(list array) 之间的区别有疑问。 这里唯一的区别是 Python 返回代码所需的时间吗? 最佳答案 它们在边缘情况下可能不同,例
例如: a = [[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.
这个问题在这里已经有了答案: Java 8 stream's .min() and .max(): why does this compile? (5 个答案) 关闭 6 年前。 我正在学习 1z0
我是一名优秀的程序员,十分优秀!