博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
找新朋友
阅读量:2242 次
发布时间:2019-05-09

本文共 1010 字,大约阅读时间需要 3 分钟。

找新朋友

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) 
Total Submission(s): 4168 Accepted Submission(s): 1894

Problem Description 
新年快到了,“猪头帮协会”准备搞一个聚会,已经知道现有会员N人,把会员从1到N编号,其中会长的号码是N号,凡是和会长是老朋友的,那么该会员的号码肯定和N有大于1的公约数,否则都是新朋友,现在会长想知道究竟有几个新朋友?请你编程序帮会长计算出来。

Input 
第一行是测试数据的组数CN(Case number,1<CN<10000),接着有CN行正整数N(1<n<32768),表示会员人数。

Output 
对于每一个N,输出一行新朋友的人数,这样共有CN行输出。

#include 
#include
using namespace std; const int BF = 32768; int main() {
int n; scanf("%d",&n); while(n--){
bitset
bs(0); int value; scanf("%d",&value); for (int i = 2; i <= value / 2; ++i) {
if (value % i == 0){
for (int j = i; j < value; j+=i) bs.set(j); } } printf("%d\n",value - bs.count() - 1); } return 0; }

解题思路if (num % i == 0)(其中i>=2) 表示是老朋友,将i老盆友i*2i*n < num全标记,最后newfrind = num - bs.cont(老盆友) - 1(自己);

转载地址:http://ttgbb.baihongyu.com/

你可能感兴趣的文章
阿里云《云原生》公开课笔记 第四章 理解Pod和容器设计模式
查看>>
阿里云《云原生》公开课笔记 第五章 应用编排与管理
查看>>
阿里云《云原生》公开课笔记 第六章 应用编排与管理:Deployment
查看>>
阿里云《云原生》公开课笔记 第七章 应用编排与管理:Job和DaemonSet
查看>>
阿里云《云原生》公开课笔记 第八章 应用配置管理
查看>>
阿里云《云原生》公开课笔记 第九章 应用存储和持久化数据卷:核心知识
查看>>
linux系统 阿里云源
查看>>
国内外helm源记录
查看>>
牛客网题目1:最大数
查看>>
散落人间知识点记录one
查看>>
Leetcode C++ 随手刷 547.朋友圈
查看>>
手抄笔记:深入理解linux内核-1
查看>>
内存堆与栈
查看>>
Leetcode C++《每日一题》20200621 124.二叉树的最大路径和
查看>>
Leetcode C++《每日一题》20200622 面试题 16.18. 模式匹配
查看>>
Leetcode C++《每日一题》20200625 139. 单词拆分
查看>>
Leetcode C++《每日一题》20200626 338. 比特位计数
查看>>
Leetcode C++ 《拓扑排序-1》20200626 207.课程表
查看>>
Go语言学习Part1:包、变量和函数
查看>>
Go语言学习Part2:流程控制语句:for、if、else、switch 和 defer
查看>>