Trang chủ Tin Học Lớp 8 Một dây chuyền vừa sản xuất được n sản phẩm và đã dán nhãn cho mỗi sản phẩm một mã...
Câu hỏi :

Một dây chuyền vừa sản xuất được n sản phẩm và đã dán nhãn cho mỗi sản phẩm một mã số để tiện quản lý. Mã số được dán cho mỗi sản phầm là một số nguyên dương và không được có hai sản phẩm bất kỳ nào có mã số trùng nhau. Không may là dây chuyền dán nhãn bị lỗi nên trong những sản phẩm đã dán nhãn có thể có nhiều sản phẩm được dán cùng một nhãn (có mã số giống nhau). Yêu cầu: Hãy tìm xem trong n sản phẩm đã dán nhãn có ít nhất bao nhiêu sản phẩm cần dán lại để tất cả các sản phẩm đều có mã số khác nhau. Dữ liệu vào: Từ tệp DANNHAN.INP gồm 2 dòng: Dòng đầu tiên ghi số nguyên dương n. Dòng thứ hai ghi n số nguyên dương được cách nhau một dấu cách - là nhãn của n sản phẩm đã được dán Kết quả: Ghi ra tệp DANNHAN.OUT một số nguyên cho biết số lượng ít nhất sản phẩm cần phải dán lại nhãn Ví dụ: DANNHAN.INP DANNHAN.OUT 7 3 1 2 2 4 2 5 1 Giới hạn: 1 $\leq$ n $\leq$ 106 Nhãn của sản phẩm là số nguyên dương có giá trị không vượt quá 107 Làm theo C++ mng giúp mình gấp với ạ

Lời giải 1 :

#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    map<int,int> mp;
    for (int i=0;i<n;i++){
        int res;
        cin >> res;
        mp[res]++;
    }
    int ans=0;
    for (auto it:mp){
        if (it.second>1){
            ans+=it.second-1;
        }
    }
    cout << ans;
    return 0;
}

Lời giải 2 :

#include <iostream>
#include <map>
using namespace std;
int main() {
    freopen("DANNHAN.INP","r",stdin);
    freopen("DANNHAN.OUT","w",stdout);
    int n;
    cin >> n;
    int a[n];
    map<int,int> count;
    for (int i=0; i<n; i++) cin >> a[i],count[a[i]]++;
    int ans=0;
    for (int i=0; i<n; i++) if (count[a[i]]>1) {
        ans+=count[a[i]]-1;
        count[a[i]]=1;
    }
    cout << ans;
}

Bạn có biết?

Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!

Nguồn :

Wikipedia - Bách khoa toàn thư

Tâm sự lớp 8

Lớp 8 - Năm thứ ba ở cấp trung học cơ sở, học tập bắt đầu nặng dần và sang năm lại là năm cuối cấp, áp lực lớn dần. Hãy chú ý đến sức khỏe, cân bằng giữa học và nghỉ ngơi để đạt hiệu quả tốt nhất!

Nguồn :

sưu tập

Copyright © 2024 Giai BT SGK