试了一下,取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