Làm thế nào để lưu số lượng kết quả của 6000000 lần gieo xúc xắc?

Đề bài kêu gieo xúc xắc 6000000 lần r đếm trường hợp các mặt xúc xắc nhưng mà e tạo mảng chỉ đến 500000 là chương trình chạy hết được r, kh biết có cách nào để tăng số lượng vị trí lên kh? mong mng giúp đỡ

Đều bài chính xác là thế nào? Mình cần đề gốc đúng từng câu chữ.
Mình đoán là đề này không dùng đến mảng (hoặc chỉ với số lượng phần tử ít). Chứ chả có đề nào yêu cầu tạo cái mảng 6 triệu phần tử cả.

6 Likes

Đâu cần phải lưu hết 6 triệu số đâu bạn :smiley: Tạo mảng 6 ô thôi.

5 Likes

Xúc xắc chỉ có 6 mặt.
Em chỉ cần tạo cái mảng 6 phần tử int và khởi tạo ban đầu đều là 0 cho 6 phần tử.
Sau khi gieo được mặt nào thì tăng phần tử mảng tương ứng lên.
Đó là về phần giải pháp.

Còn đến 500000 là tạch thì có thể do em dùng devc kết hợp với giáo trình chưa được tốt nên nó mới dạy em cấp phát mảng kiểu này :

int arr[500000];

Kết quả là dính tràn stack (stackoverflow).
Nếu muốn nhiều hơn em phải làm như thế này :

// khai báo 20 triệu phần tử int
int *arr = new int[20000000];
// làm gì đó
// .....
// sau khi làm xong không dùng nữa : 
delete [] arr;
7 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?