Từ 1 tới 4 trên tổng số 4 kết quả

Đề tài: giúp về làm việc giữa hai mảng

  1. #1
    Ngày gia nhập
    10 2008
    Bài viết
    0

    Mặc định giúp về làm việc giữa hai mảng

    cho em hỏi em có hai mảng A[0 0 0 0 0] và B[1 1 2 3 4] giờ em muốn cho mỗi khi giá trị nào của phần tử của mảng B trùng thứ tự phần tử của mảng A thì giá trị phần tử của mảng A sẽ tăng lên 1. kết quả ra mảng A sẽ thành [2 1 1 1 0] thì em phải làm sao? xin được chỉ giúp! xin cám ơn!
    p/s lần đầu tiên đặt câu hỏi vào diễn đàn có gì sai xin mọi người bỏ qua!

  2. #2
    Ngày gia nhập
    09 2014
    Nơi ở
    Bắc Giang (thành phố), Vietnam
    Bài viết
    0

    Mình không hiểu đề bài lắm bạn, theo mình hiểu nếu giá trị của B trùng thứ tự phần tử tương ứng của A thì tăng giá trị của A lên 1 đúng không?
    mà còn nữa, đây là bạn viết trên C hả, nếu là trên C thì mình nghĩ A = [0 1 1 1 1] chứ nhỉ?

  3. #3
    Ngày gia nhập
    10 2008
    Bài viết
    0

    C++ cậu ah. Tức là lần lượt các phần tử của B chọn vị trí trên A theo giá trị của mình, thì B có 2 phần tử đầu chọn vị trí 1, 3 phần tử sau chọn vị trí 2 3 4 tương ứng, thì A cần cho biết số lượng vị trí được chọn tương ứng là A = [2 1 1 1 0] => tức là biểu thị số lượng phần tử chọn vào vị trí đó ý!

  4. #4
    Ngày gia nhập
    09 2014
    Nơi ở
    Bắc Giang (thành phố), Vietnam
    Bài viết
    0

    Trích dẫn Nguyên bản được gửi bởi mhiep Xem bài viết
    C++ cậu ah. Tức là lần lượt các phần tử của B chọn vị trí trên A theo giá trị của mình, thì B có 2 phần tử đầu chọn vị trí 1, 3 phần tử sau chọn vị trí 2 3 4 tương ứng, thì A cần cho biết số lượng vị trí được chọn tương ứng là A = [2 1 1 1 0] => tức là biểu thị số lượng phần tử chọn vào vị trí đó ý!
    Mình thì chưa học C++ bạn ạ, nhưng mình có thể mạnh dạn nói thuật toán thế này không biết có đúng không?
    do là giá trị B[i] là bao nhiêu thì giá trị của phần tử thứ tương ứng với B[i] của mảng A lại tăng lên 1 đơn vị nên là mình sẽ dùng 1 vòng for duyệt từ đầu đến cuối của mảng B, mỗi vòng ta lại tăng giá trị của A[B[i]] lên 1 đơn vị.
    viết trong C sẽ là: for (i=0; i<n; ++i) a[b[i]]++;
    vậy đó!

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn