时间限制: 1 s

空间限制: 128000 KB

题目等级 : 黄金 Gold

题解

题目描述  Description

有这样的一个集合,集合中的元素个数由给定的N决定,集合的元素为N个不同的正整数,一旦集合中的两个数x,y满足y = P*x,那么就认为x,y这两个数是互斥的,现在想知道给定的一个集合的最大子集满足两两之间不互斥。

输入描述  Input Description

输入有多组数据,每组第一行给定两个数N和P(1<=N<=10^5, 1<=P<=10^9)。接下来一行包含N个不同正整数ai(1<=ai<=10^9)。

输出描述  Output Description

输出一行表示最大的满足要求的子集的元素个数。

样例输入  Sample Input

4 2

1 2 3 4

样例输出  Sample Output

3

数据范围及提示  Data Size & Hint

分类标签 Tags 点此展开

哈希表  线性结构
代码
#include<map>
#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<algorithm>
using namespace std;
map<int,bool>q;
int n,p,a,b[1000000],sum;
int main()
{scanf("%d%d",&n,&p);for(int i=1;i<=n;i++){scanf("%d",&b[i]);}sort(b+1,b+1+n);for(int i=1;i<=n;i++){if(!q[b[i]]){sum++;q[b[i]*p]=1;}}printf("%d",sum);return 0;
}

转载于:https://www.cnblogs.com/z360/p/6724981.html

codevs——1553 互斥的数相关推荐

  1. CODE【VS】1553 互斥的数(hash表+map函数)

    题目描述 Description 有这样的一个集合,集合中的元素个数由给定的N决定,集合的元素为N个不同的正整数,一旦集合中的两个数x,y满足y = P*x,那么就认为x,y这两个数是互斥的,现在想知 ...

  2. [CODEVS 1087] 麦森数

    描述 计算2P-1的位数和最后500位数字 分析 有一个公式,2^p的位数是p*lg2以十为底 2 的对数. 证明 : 2p=10lg2p=10p∗lg2 2^p = 10^{lg2^p} = 10^ ...

  3. [codevs 1907] 方格取数3

    [codevs 1907] 方格取数3 题解: 二分图染色.最大点权独立集. 因为要用到最大独立集的一些思路,故先写了一篇最大独立集的题解:http://blog.csdn.net/qq_211102 ...

  4. [codevs 1227] 方格取数2

    [codevs 1227] 方格取数 2 题解: 注:这是CODEVS的方格取数2,走k次的版本. 因为每个格子可以走无数次,但走过一次之后数字就变成了0,也就是只有一次可以加上格子里的数字.所以要拆 ...

  5. 【codevs1553】互斥的数,二分查找是个好东西

    互斥的数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 有这样的一个集合,集合中的元素个数由给定的N决定,集合的元素为N个不 ...

  6. 【codevs1553】互斥的数

    problem solution codes /* 贪心 1.找出不互质的数的集合,就是把互斥的数删去. 2.那么当有两个互斥的数时,如果删掉前面(小)的,这个数后面的与它互斥的数也会入选,所以删掉后 ...

  7. 互斥的数(codevs1553)

    题目描述  有这样的一个集合,集合中的元素个数由给定的N决定,集合的元素为N个不同的正整数,一旦集合中的两个数x,y满足y = P*x,那么就认为x,y这两个数是互斥的,现在想知道给定的一个集合的最大 ...

  8. codevs 1227 方格取数 2

    Description 给出一个n*n的矩阵,每一格有一个非负整数Aij,(Aij <= 1000)现在从(1,1)出发,可以往右或者往下走,最后到达(n,n),每达到一格,把该格子的数取出来, ...

  9. c++ pipe 同步 互斥_数一数Linux中有多少种线程同步策略-『Linux 源码解析(二)』...

    点这里排版好一点 本来这篇应该是上周发的,拖延症又犯了 上一篇主要讨论了Linux线程的调度算法 这篇来谈谈线程间的同步问题,暂时不包括IPC(InterProcess Communication)问 ...

最新文章

  1. 一次linux服务器load高达600多的异常处理过程
  2. jquery使用技巧总结
  3. 《Objective-c》-(内存管理之三:@property的内存管理)
  4. 论文浅尝 - IJCAI2020 | Mucko:基于事实的多层跨模态知识推理视觉问答
  5. VirtualBox的四种网络接入模式
  6. 【android studio】解决android studio drawable新建项目时只有一个drawable目录的问题
  7. mysql50题_My SQL 练习题
  8. ffmpeg多路同时推流
  9. 生信技能树课程记录笔记(一)20220523
  10. Linux入门系列课程一
  11. 立陶宛央行抢跑数字货币背后:前瞻的区块链战略 中国已有企业布局
  12. html直接使用marked.js解析marked文档
  13. 数据湖和数据仓库的区别是什么?
  14. MacbookPro下载word文件显示dms怎么办
  15. cadence 画电路图时出现绿色的倒三角
  16. R语言survival包Surv函数创建生存对象、建立Cox回归模型(包含所有协变量)比较不同治疗方法生存率的差异、drop1函数计算cox回归模型自变量似然比检验值、删除冗余变量重新构建cox模型
  17. 手机控制电脑远程开机,笔记本与老电脑都能实现
  18. 学计算机键盘用什么轴,机械键盘别再盲目的选择,看看四种常用轴到底适合什么用途...
  19. 【钉钉-场景化能力包】群机器人数据报表推送
  20. 大数据从入门到实战 - 第3章 MapReduce基础实战

热门文章

  1. AWS Devops所涉及的必须了解运用求职的重要服务
  2. 面试系列-分布式事务
  3. 考研复习计划(8.20-8.31)
  4. FinTech活动 | “金融科技创新应用与发展”研讨会25日在金融街举办
  5. 微信8.0搞笑视频合集网盘下载 怎么设置8.0状态教程攻略分享
  6. 人工智能反欺诈三部曲——设备指纹
  7. 金蝶标准版迷你版 数据库引擎找不到对象MSysDb。请确定对象是否存在,并正确的写出他的名称和路径 帐套损坏。
  8. Tensorflow实现Neural Style图像风格转移
  9. QT无人机地面站设计与制作随笔总结
  10. SQL交叉表查询 如何实现