Sắp xếp số từ 1 tới 100 có bao cặp số gồm 6 chữ số có tổng là 50 (1 người xem)

  • Thread starter Thread starter ssnova
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

ssnova

Thành viên mới
Tham gia
7/9/08
Bài viết
12
Được thích
2
Chào anh chị em

Mình nhờ mọi người lập hộ hàm VB nội dung là
từ 1 tới 100 có bao nhiêu kết quả gồm 6 chữ số (không lặp) có tổng là 50 Rồi liệt kê kết quả (6 số )theo cột A B C D E F

Cám ơn ạ
 
Các ơn các bác giúp đỡ.
Khi mình thử thay đổi tổng 6 số là 110 thì kết quả trả về
1 2 3 4 5 108 (108 nằm ngoài khoảng số đã cho từ 1..100 mất rồi)
Vậy có cách nào liệt kê tổng quát được kết quả có tổng 6 số trong khoảng từ 90,91,92..99 được không
VD thỏa mãn tổng mix : 90 và Tổng max: 99
xin chân thành cảm ơn
chạy code giới hạn kết quả 1.048.576 dòng
Mã:
Sub GPE()
Dim N As Long, Tmin As Long, Tmax As Long, Xi As Long, Arr(1 To 1048576, 1 To 6) As Long
Dim i As Long, i1 As Long, i2 As Long, i3 As Long, i4 As Long, i5 As Long, i6 As Long
ActiveSheet.UsedRange.Clear
Tmin = 80
Tmax = 90
N = 100
Xi = Int((Tmax - 15) / 6)
For i1 = 1 To IIf(Xi < N - 5, Xi, N - 5)
  Xi = Int((Tmax - i1 - 10) / 5)
  For i2 = i1 + 1 To IIf(Xi < N - 4, Xi, N - 4)
    Xi = Int((Tmax - i1 - i2 - 6) / 4)
    For i3 = i2 + 1 To IIf(Xi < N - 3, Xi, N - 3)
      Xi = Int((Tmax - i1 - i2 - i3 - 3) / 3)
      For i4 = i3 + 1 To IIf(Xi < N - 2, Xi, N - 2)
        Xi = Int((Tmax - i1 - i2 - i3 - i4 - 1) / 2)
        For i5 = i4 + 1 To IIf(Xi < N - 1, Xi, N - 1)
          For i = 0 To Tmax - Tmin
            i6 = Tmin - i1 - i2 - i3 - i4 - i5 + i
            If i6 <= N And i6 > i5 Then
              If k = 1048576 Then GoTo Thoat
              k = k + 1
              Arr(k, 1) = i1: Arr(k, 2) = i2
              Arr(k, 3) = i3: Arr(k, 4) = i4
              Arr(k, 5) = i5: Arr(k, 6) = i6
            End If
          Next i
        Next
      Next
    Next
  Next
Next
Thoat:
Range("A1").Resize(k, 6) = Arr
End Sub
 

File đính kèm

Upvote 0
Bạn HieuCD có phải siêu nhân không mà cái gì cũng biết hết ah.
Thanks
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom