1. 程式人生 > >CCF 201412-1 門禁系統

CCF 201412-1 門禁系統

問題描述

    濤濤最近要負責圖書館的管理工作,需要記錄下每天讀者的到訪情況。每位讀者有一個編號,每條記錄用讀者的編號來表示。給出讀者的來訪
記錄,請問每一條記錄中的讀者是第幾次出現。

輸入格式

輸入的第一行包含一個整數n,表示濤濤的記錄條數。
第二行包含n個整數,依次表示濤濤的記錄中每位讀者的編號。

輸出格式

輸出一行,包含n個整數,由空格分隔,依次表示每條記錄中的讀者編號是第幾次出現。

樣例輸入

5
1 2 1 1 3

樣例輸出

1 1 2 3 1

評測用例規模與約定

1≤n≤1,000,讀者的編號為不超過n的正整數。

解題思路

本題只需要使用一個數組來儲存每個數出現的次數就行了。
#include <iostream>

using namespace std;

int a[1001], b[1001];

int main()
{
    std::ios::sync_with_stdio(false);
    int n;
    cin >> n;
    for (int i = 0; i < n; i++)
    {
        cin >> a[i];
        b[a[i]]++;
        a[i] = b[a[i]];
    }
    for (int i = 0; i < n; i++)
    {
        cout
<< a[i] << " "; } cout << endl; return 0; }