cho mảng a:Ví dụ: 1 0 -5 -1 -5 2 3 -1 0 -7 2 -1 8 9 -5 1 0
(không dùng hoán vị)viết ra các số có số lần lặp nhiều nhất:
--> xuất: 0 -1 -5
cho mảng a:Ví dụ: 1 0 -5 -1 -5 2 3 -1 0 -7 2 -1 8 9 -5 1 0
(không dùng hoán vị)viết ra các số có số lần lặp nhiều nhất:
--> xuất: 0 -1 -5
Được sửa bởi thuonghcm lúc 11:50 ngày 19-01-2007 Reason: không xếp tăng hay giảm
Đâu khó lắm đâu
B1: Dùng 1 vòng lặp, quét hết xem có những số nào ( theo ví dụ thì có tập hợp {-7; -5; -1; 0; 1; 2; 3; 8; 9}. Tạo 1 mảng M 2 chiều, 2 dòng, số cột càng nhiều càng tốt. Nhập hết tập hợp trên vào dòng thứ 1.
B2: Cho 1 biến i chạy từ 1 đến hết ở dòng trên, thống kê xem phần tử ở dòng trên xuất hiện bao nhiêu lần thì ghi vô dòng dưới.
B3: Tìm max ở dòng dưới rồi xuất phần tử bên trên max.
Ngoài ra còn một số cách khác như nhập cấc bước làm 1 chẳng hạn thì cũng dc, nhưng tựu trung là như vầy
hì, bài nì dễ mà bạn, ở đây có ai biết về thuật tóan làm bài các con mã đi hết các ô của bàn cờ sao cho ko ô nào bị đi wa 2 lần ko??
hì hì hì ,,,, hay lắm, đây là bt giải trí mà, bạn grenadier1991 ơi!!! bạn có rành về đệ quy hôn:? tui đang n/c ĐQ mà sao chạy tay 0 hiểu, các bài ĐQ mà gọi trong vòng lặp đó
tui làm theo bạn, m1: 1 0 -5 -1 -5 2 3 -1 0 -7 2 -1 8 9 -5 1 0
-----------------m2: 2 3 3 3 3 2 1 3 3 1 2 3 1 1 3 2 3
max của mảng 2 lÀ 3-->nó sẽ xuất ra 0 0 0 -5 -5 -5 -1 -1 -1
vậy là ...sẽ lúc đúng lúc sai nếu làm if a[i]<>a[i+1}then...
Được sửa bởi thuonghcm lúc 21:10 ngày 19-01-2007 Reason: 1
Ko phải vậy, tui nói là chỉ tìm tập hợp thôi, tức là bộ {-7; -5; -1; 0; 1; 2; 3; 8; 9} đó, cái nào trùng thì bỏ đi thui. Sẽ ko xảy ra vấn đề như bạn đâu nếu làm cẩn thận theo từng bước.
Bài này chỉ cần sort lại rồi đếm các phần tử liên tiếp bằng nhau thôi. Với cách này có thể làm được n lớn cỡ 10000 of longint. O(nlogn).
Code:dãy : 1 0 -5 -1 -5 2 3 -1 0 -7 2 -1 8 9 -5 1 0 sort : -7 -5 -5 -5 -1 -1 -1 0 0 0 1 1 2 2 3 8 9 đếm : | -7 | -5 -5 -5 | -1 -1 -1 | 0 0 0 | 1 1 | 2 2 | 3 | 8 | 9 1 3 3 3 2 2 1 1 1
cái nào trùng thì bỏ đi, dùng tập hợp à?set of... hơi khó, tui hỏng quen dùng set of...
bạn f12 ơi trên đề có nói là 0 được sort mà .
Đề bài không phải là tìm các số có số lần lặp nhiều nhất sao ? Đáp số đâuu có bị thay đổi khi ta sort lại dãy số.
Thêm nữa đề bài có nói là không được sort đâu ?
Được sửa bởi F12 lúc 19:33 ngày 20-01-2007
Sort cũng là 1 cách hay, nhưng cài đặt nó để đếm thì khó hơn
Bookmarks