【map】【multiset】hdu 4022
2014-04-18 12:34
302 查看
1. 可能有重复点(这一点题目并没有说明),因此 set 行不通
2. 用 C++ 的 cin, cout 超时
/*
* hdu 4022
* http://acm.hdu.edu.cn/showproblem.php?pid=4022 * 1500MS 12376K
* 【map】【multiset】
* 1. 可能有重复点(这一点题目并没有说明),因此 set 行不通
* 2. 用 C++ 的 cin, cout 超时
*/
#include <cstdio>
#include <map>
#include <set>
using namespace std;
typedef map<int, multiset<int> > BaseMap;
void BombLine(BaseMap &oBMTarget, int iLine, BaseMap &oBM2)
{
for (multiset<int>::iterator it = oBMTarget[iLine].begin();
it != oBMTarget[iLine].end(); ++it )
{
oBM2[*it].erase(iLine);
}
oBMTarget[iLine].clear();
}
int main()
{
int iBaseNum, iBomberNum, x, y, c, d;
while (1)
{
scanf("%d%d", &iBaseNum, &iBomberNum);
if ( (0 == iBaseNum) && (0 == iBomberNum) )
{
break;
}
BaseMap oBMh, oBMv;
while (iBaseNum--)
{
scanf("%d%d", &x, &y);
oBMh[x].insert(y);
oBMv[y].insert(x);
}
while (iBomberNum--)
{
scanf("%d%d", &c, &d);
if (0 == c)
{
printf("%d\n", oBMh[d].size());
BombLine(oBMh, d, oBMv);
}
else
{
printf("%d\n", oBMv[d].size());
BombLine(oBMv, d, oBMh);
}
}
printf("\n");
}
return 0;
}
2. 用 C++ 的 cin, cout 超时
/*
* hdu 4022
* http://acm.hdu.edu.cn/showproblem.php?pid=4022 * 1500MS 12376K
* 【map】【multiset】
* 1. 可能有重复点(这一点题目并没有说明),因此 set 行不通
* 2. 用 C++ 的 cin, cout 超时
*/
#include <cstdio>
#include <map>
#include <set>
using namespace std;
typedef map<int, multiset<int> > BaseMap;
void BombLine(BaseMap &oBMTarget, int iLine, BaseMap &oBM2)
{
for (multiset<int>::iterator it = oBMTarget[iLine].begin();
it != oBMTarget[iLine].end(); ++it )
{
oBM2[*it].erase(iLine);
}
oBMTarget[iLine].clear();
}
int main()
{
int iBaseNum, iBomberNum, x, y, c, d;
while (1)
{
scanf("%d%d", &iBaseNum, &iBomberNum);
if ( (0 == iBaseNum) && (0 == iBomberNum) )
{
break;
}
BaseMap oBMh, oBMv;
while (iBaseNum--)
{
scanf("%d%d", &x, &y);
oBMh[x].insert(y);
oBMv[y].insert(x);
}
while (iBomberNum--)
{
scanf("%d%d", &c, &d);
if (0 == c)
{
printf("%d\n", oBMh[d].size());
BombLine(oBMh, d, oBMv);
}
else
{
printf("%d\n", oBMv[d].size());
BombLine(oBMv, d, oBMh);
}
}
printf("\n");
}
return 0;
}
相关文章推荐
- SpringMvc国际化 根据不同请求调用不同的资源文件
- java实现FTP上传下载
- 微软ASP.NET技术“乱谈”
- 新浪微博正式在美国上市
- Python 内建函数,filter,map, reduce
- 10大最适合编程的字体推荐下载,让代码看起来更美更舒服!
- 通用管理系统概要设计说明书
- 电脑常用的几个快捷键
- C# 线程间互相通信 AutoResetEvent和ManualResetEvent
- Android 按两下退出的方法
- 李建忠:Metadata是.NET平台的核心灵魂
- springframework中使用ReloadableResourceBundleMessageSource加载properties文件的问题
- Ganymed SSH-2 for Java系列2之连接远程服务器
- leetcode 刷题:插入排序链表
- mysql 高级之权限-用户权限
- OK6410开发板使用交换机搭建NFS
- Queue class
- Implementing a Principal Component Analysis (PCA) in Python step by step
- 微信公众平台应用开发框架sophia设计不足(1)
- 2014_4_18