题目描写叙述 Description

小明是一名天文爱好者,他喜欢晚上看星星。这天,他从淘宝上买下来了一个高级望远镜。他十分开心。于是他晚上去操场上看星星。

不同的星星发出不同的光,他的望远镜能够计算出观測到的星星发出的光的数值W。小明当然想尽可能地多看到星星,于是他每看到一颗星星。就要看看他之前有没有看过这颗星星。可是他看的星星太多了。他根本数只是来,于是他让你帮忙。

输入描写叙述 Input Description

共同拥有两行,第一行仅仅有一个整数,为小明观測到的星星的数量n。第二行有n个整数。每两个整数由一个空格隔开,分别为小明观測到每颗星星的光的数值W[1]-W[n]。

输出描写叙述 Output Description

仅仅有一行,这一行共同拥有n个数字0或1。0表示相应的星星之前没有观測到。1表示相应的星星之前已经看过了。注意:数字之间没有空格!

例子输入 Sample Input

5

1 5 5 4 1

例子输出 Sample Output

  1. 00101

数据范围及提示 Data Size & Hint

例子是往往是骗人的。本题中

30%的数据,0<n≤5000。

20%的数据,-20000≤W≤20000。

60%的数据。0<n≤50000。

100%的数据,0<n≤500000;-2000000000≤W≤2000000000。

思路:这题利用bitset取代二进制,然后再map标记一下可轻松解决些题。只是时间消耗比較多。

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<algorithm>
  4. #include<map>
  5. #include<bitset>
  6. using namespace std;
  7. bitset<500009>b;
  8. map<long long,int>m;
  9. int main()
  10. {
  11. int n,i;
  12. long long a;
  13. cin>>n;
  14. for(i=0;i<n;i++)
  15. {
  16. scanf("%lld",&a);
  17. if(m[a]) b.set(i);
  18. else m[a]=1;
  19. }
  20. for(i=0;i<n;i++)
  21. printf("%d",b[i]?
  22.  
  23. 1:0);
  24. puts("");
  25. return 0;
  26. }

wikioi 2147 bitset+map解决的更多相关文章

  1. 利用Map解决复杂业务

    遍历出题库表的题库名称和题库id,根据题目id即questionBankId获取 分组,即该题库题目总数,该题库题目正确数,该题库已回答题目数. <sqltemplate id="co ...

  2. STL 之map解决 Message Flood(原字典树问题)

                                                                                      Message Flood Time ...

  3. 巧用map解决nginx的Location里if失效问题

    需求: Nginx根据参数来输出不同的header 我们想用Nginx来判断一些通用的参数, 根据参数情况在输出中不同的header, 或者cookie, 那么根据正常思路, 有如下配置: locat ...

  4. 报错找不到jquery-1.10.2.min.map解决办法

    http://fruithardcandy.iteye.com/blog/1941452

  5. Java compiler level does not match the version of the installed Java project facet. map解决方法

    右键项目"Properties",在弹出的"Properties"窗口左侧,单击"Project Facets",打开"Proje ...

  6. Codeforces Gym 100342J Problem J. Triatrip bitset 求三元环的数量

    Problem J. TriatripTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100342/att ...

  7. (map)水果 hdu1263

    水果 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  8. es6 Map,Set 和 WeakMap,WeakSet

    这些是新加的集合类型,提供了更加方便的获取属性值的方法,不用像以前一样用hasOwnProperty来检查某个属性是属于原型链上的呢还是当前对象的.同时,在进行属性值添加与获取时有专门的get,set ...

  9. BZOJ2124: 等差子序列(树状数组&hash -> bitset 求是否存在长度为3的等差数列)

    2124: 等差子序列 Time Limit: 3 Sec  Memory Limit: 259 MBSubmit: 2354  Solved: 826[Submit][Status][Discuss ...

随机推荐

  1. 获取指定点的RGB值

    实现效果: 知识运用: Color对象的RGB属性 实现代码: private void button1_Click(object sender, EventArgs e) { OpenFileDia ...

  2. 让idea调试不进入class文件中去

  3. mysql时间的处理

    mysql中格式化时间为: 1,DATE_FORMAT(APPLYDATE,'%Y-%m-%d %H:%i:%S') AS APPLYDATE 2,DATE_FORMAT(CHKSIGNDATE, ' ...

  4. POJ-1328-放置雷达

    这是一道贪心的题目,首先我们要知道,我们放置雷达的话我们可以做一个转换,就是已知岛屿的点坐标的时候,我们可以算一下,这个点以d为半径与x轴交点之间的线段在x轴上的投影,然后我们只需要在这个投影范围内设 ...

  5. 1. 调整InnoDB系统表空间的大小

    1. 调整InnoDB系统表空间的大小 介绍如何增大或减小InnoDB系统表空间的大小 . 1.1 增加InnoDB系统表空间大小 增加InnoDB系统空间最简单的方法就是,在配置文件中配置autoe ...

  6. (8) openssl rsautl(签名/验证签名/加解密文件)和openssl pkeyutl(文件的非对称加密)

    rsautl是rsa的工具,相当于rsa.dgst的部分功能集合,可用于生成数字签名.验证数字签名.加密和解密文件. pkeyutl是非对称加密的通用工具,大体上和rsautl的用法差不多,所以此处只 ...

  7. C++:别名 / 引用 的简单实用

    文章来源:http://www.cnblogs.com/hello-tl/p/7910048.html /* C++别名操作 在更改别名的时候同时变量也会跟着改变 */ #include " ...

  8. vue项目中设置跨域

    config->index.js 'use strict' // Template version: 1.3.1 // see http://vuejs-templates.github.io/ ...

  9. 【HIHOCODER 1478】 水陆距离(BFS)

    描述 给定一个N x M的01矩阵,其中1表示陆地,0表示水域.对于每一个位置,求出它距离最近的水域的距离是多少. 矩阵中每个位置与它上下左右相邻的格子距离为1. 输入 第一行包含两个整数,N和M. ...

  10. POJ 1949 Chores(DAG上的最长路 , DP)

    题意: 给定n项任务, 每项任务的完成用时t和完成每项任务前需要的k项任务, 求把所有任务完成的最短时间,有当前时间多项任务都可完成, 那么可以同时进行. 分析: 这题关键就是每项任务都会有先决条件, ...