Gunner
Time Limit: 1 Sec Memory Limit: 256 MB
题目连接
http://acm.hdu.edu.cn/showproblem.php?pid=5199
Description
Jack will shot many times, he wants to know how many birds fall during each shot.
a bullet can hit many birds, as long as they stand on the top of the tree with height of H.
Input
In the second line, there are n numbers h[1],h[2],h[3],…,h[n] which describes the height of the trees.
In the third line, there are m numbers q[1],q[2],q[3],…,q[m] which describes the height of the Jack’s shots.
Please process to the end of file.
[Technical Specification]
1≤n,m≤1000000(106)
1≤h[i],q[i]≤1000000000(109)
All inputs are integers.
Output
Sample Input
4 3 1 2 3 4 1 1 4
Sample Output
HINT
题意
给你n个数m次询问,问你大小为A的数有多少个,第二次问的时候,就直接输出0就好
题解:
map可过,非常轻松(雾
~\(≧▽≦)/~啦啦啦
代码:
#include<cstdio> #include<map> using namespace std; map<int,int> g; int n,m; inline int read() {int x=0,f=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}return x*f; } int main() {while(scanf("%d%d",&n,&m)!=EOF){g.clear();for(int i=0;i<n;i++){int x=read();g[x]++;}for(int i=0;i<m;i++){int x=read();if(g.find(x)==g.end()){printf("0\n");}else{printf("%d\n",g[x]);g[x]=0;}}} }