T1 小红的质数合数 (10分) - 饿了么测试岗编程题题解
题目描述
小红有一个数组,她想知道这个数组不同的质数和不同的合数共有多少个。
合数是指在大于1的整数中除了能被1和本身整除外,还能被其他数(O除外)整除的数。
输入描述
第一行输入一个整数n() 表示数组长度。
第二行输入 n
个整数表示数组
输出描述
输出一个整数。
样例输入
3
20 2 4
样例输出
3
题解
这道题目属于基础的数学题,需要判断数组中不同的质数和合数的数量。
解题思路如下:
- 使用
unordered_set<int>
来存储数组中的元素,利用集合的特性来去除重复元素。- 遍历数组,将元素插入集合中。
- 判断集合中是否包含数字1,如果包含,则输出集合大小减1(因为1不是质数也不是合数),否则输出集合大小。
代码大致描述如下:
- 创建一个空的
unordered_set<int>
来存储数组元素。- 读取输入的数组长度
n
。- 循环读取
n
个整数,并将其插入集合中。- 判断集合中是否包含数字1,
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
🔥笔试编程真题宝典💯 文章被收录于专栏
📕分享大厂机试真题深度剖析核心考点,助你速通面试。