題目描述
又到過年了,狗熊嶺的動物們都忙碌起來,張燈結綵準備過年。李老闆卻要光頭強砍一些百年美人松回去。
美人松都很高的,他們的高度不超過長整型(long long)。
現在光頭強看到樹林有N棵美人松按照從矮到高的順序排好,當然每顆松的高度是已知的。李老闆要問光頭強M次,每次詢問高度爲K的美人松有多少顆。
輸入格式
第1行2個正整數N和M(1≤N≤10^6;1≤M≤1000),之間用一個空格隔開。
第2行N個正整數,之間用一個空格隔開,分別表示N樹美人松的高度。
第3行M個正整數K_i,之間用一個空格隔開,分別表示M個詢問,每次詢問高度爲K_i的美人松有多少棵。
輸出格式
輸出一行M個正整數,之間用一個空格隔開,分別對應每次詢問高度爲K_i的數量,如果沒有,則輸出0。
輸入輸出樣例
輸入 #1 複製
5 2
2 3 3 4 5
3 4
輸出 #1 複製
2 1
#include <iostream>
#include <cstdio>
#include <map>
using namespace std;
map <long long, int> mp;
int n, m, x;
int main () {
scanf ("%d%d", &n, &m);
for(register int i = 1; i <= n; ++i) {
scanf ("%d", &x);
++mp[x];
}
for(register int i = 1; i <= m; ++i) {
scanf ("%d", &x);
printf ("%d ", mp[x]);
}
return 0;
}