hdu 4022 STL
2015-03-06 16:52
375 查看
题意:给你n个敌人的坐标,再给你m个炸弹和爆炸方向,每个炸弹可以炸横排或竖排的敌人,问你每个炸弹能炸死多少个人。
/* HDU 4022 G++ 1296ms */ #include<stdio.h> #include<iostream> #include<set> #include<map> #include<algorithm> using namespace std; // 建立一个 map,从 int 到 一个 multiset 容器的映射 typedef map<int,multiset<int> > line;// 两个>间一定要加个空格 map<int,multiset<int> >mx;//定义x坐标对应的map map<int,multiset<int> >my;//定义y坐标对应的map int bomb(line &x,line &y,int pos) { int ret=x[pos].size(); multiset<int>::iterator it;//这个学习下 for(it=x[pos].begin();it!=x[pos].end();it++) y[*it].erase(pos);//multiset 去除一个元素 x[pos].clear();//清空multiset return ret; } int main() { int n,m; int c,d; int tx,ty; while(scanf("%d%d",&n,&m)!=EOF) { if(n==0&&m==0)break; mx.clear(); my.clear(); for(int i=0;i<n;i++) { scanf("%d%d",&tx,&ty); mx[tx].insert(ty); my[ty].insert(tx); } for(int i=0;i<m;i++) { scanf("%d%d",&c,&d); int ans; if(c==0) ans=bomb(mx,my,d); else ans=bomb(my,mx,d); printf("%d\n",ans); } printf("\n"); } return 0; }
相关文章推荐
- HDU 4022 STL
- HDU 4022 Bombing (STL)
- 【STL】hdu 4022 Bombing
- HDU 4022 stl multiset
- HDU 4022 Bombing(stl,map,multiset,iterater遍历)
- 多校第六场 1008 hdu 5360 Hiking(贪心+STL)
- hdu 4022 Bombing map+multiset 解题报告
- HDU 2072 STL
- HDU 1702--ACboy needs your help again!【STL】
- STL : map函数的运用 --- hdu 4941 : Magical Forest
- 【多校训练】hdu 6040 Hints of sd0061 STL
- hdu 2275 Kiki & Little Kiki 1 (STL)
- hdu 1075 What Are You Talking About STL的使用
- HDU 5167 (dfs || STL)
- HDU 3682 To Be an Dream Architect (STL去重--思路题目)
- HDU 1027 STL
- hdu 5199 Gunner(STL之map,水)
- HDU-5875-Function-STL维护
- HDU 1075 What Are You Talking About (STL, 字典树)
- HDU 1716 排列2 (stl,next_permutation)