试了一下,取1000次有1、2次机会,取10000次机会还不少。
不知有无算错
程序代码:
不知有无算错
程序代码:DIMENSION aSum[8]
DIMENSION a208[208]
FOR n = 1 TO 1000
IF EMPTY(a208)
DIMENSION a208[208]
FOR ai = 1 TO 208
a208[ai] = ai
ENDFOR
ENDIF
FOR i = 1 TO 8
aSum[i] = _Rand(@a208)
ENDFOR
IF (aSum[1]+aSum[2]+aSum[3]+aSum[4]+aSum[5]+aSum[6]+aSum[7]+aSum[8]) == 836
*ASORT(aSum)
? aSum[1], aSum[2], aSum[3], aSum[4], aSum[5], aSum[6], aSum[7], aSum[8]
*EXIT
ENDIF
ENDFOR
RETURN
FUNCTION _Rand(a208)
IF EMPTY(a208)
RETURN 0
ENDIF
LOCAL up, ai, ret
up = ALEN(a208) - 1
ai = INT(up * RAND() + 1)
ret = a208[ai]
ADEL(a208, ai)
IF up > 0
DIMENSION a208[up]
ENDIF
RETURN ret
ENDFUNC







