求和Maple中的最小值

时间:2016-12-13 06:35:26

标签: sum minimum maple

我在Maple中有一个列表A := [3,1,7,2,4,9]

如何获得n最小值?

我需要将n最小值相加,所以我想我应该使用像

这样的东西
n := 3:
A := [3, 1, 7, 2, 4, 9]:
add( [ seq( min( A ), i=1..n) ] );

但它只会加总1 + 1 + 1,因为每次最小值为1。我需要在第一次发生时删除最小值。

1 个答案:

答案 0 :(得分:1)

一种简单的方法是首先对A进行排序。

restart;

A := [3,1,7,2,4,9]:
n := 3:

B := sort(A);
                       B := [1, 2, 3, 4, 7, 9]

add(B[i], i=1..n);
                                  6

如果某个值出现多次,您希望发生什么?

[编辑] 后续问题涉及如何从列表中删除0。这里有几种方法。

restart;

A := [3,1,0,7,2,0,4,0,9]:

remove(x->x=0, A);

                    [3, 1, 7, 2, 4, 9]

remove(type, A, identical(0));

                    [3, 1, 7, 2, 4, 9]

map(x->`if`(x=0,NULL,x), A);

                    [3, 1, 7, 2, 4, 9]
顺便说一下,当非零值出现不止一次时,你没有说明你想要做什么。