4K - 找新朋友
Input
第一行是测试数据的组数CN(Case number,1<CN<10000),接着有CN行正整数N(1<n<32768),表示会员人数。
Output
对于每一个N,输出一行新朋友的人数,这样共有CN行输出。
Sample Input
2
25608
24027
Sample Output
7680
16016 // 辗转相除法求公约数
#include<stdio.h> int cmd(int a, int b)
{
int t=;
if(a<b)
{ t=a; a=b; b=t; }
while(t!=)
{ t=a%b; a=b; b=t; }
return a;
} int main()
{
int cn, n, c, i;
scanf("%d", &cn);
while(cn--)
{
c=;
scanf("%d", &n);
for(i=;i<n;i++)
if(cmd(i,n)>)
c++;
printf("%d\n", n-c-);
}
return ;
}
Time Limit Exceeded
// 先打表求素数,用i遍历[2,N),用j遍历[2,i]. 寻找不大于i的素数j,判断其是否为i与N的公约数
#include<stdio.h> int prime(int n)
{
int i, flag=, k;
for(i=; i*i<=n; i++)
if(n%i==)
{ flag=; break; }
return flag;
} int main()
{
int cn, n, c, i,j,flag, pri[]={};
for(i=;i<=;i++)
if(prime(i))
pri[i]=;
scanf("%d", &cn);
while(cn--)
{
c=;
scanf("%d", &n);
for(i=;i<n;i++)
{
flag=;
for(j=;j<=i;j++)
if(pri[j])
if(i%j==&&n%j==)
{ flag=; break; }
if(flag) c++;
}
printf("%d\n", n-c-);
}
return ;
}
Time Limit Exceeded*2
// Compiler Error C2103:You cannot take the address of a register.
#include<stdio.h>
int main()
{
register int cn, n;
scanf("%d", &cn);
while(cn--)
{
scanf("%d", &n);
int a[]={};
for(register int i=;i<=n/;i++)
{
if(n%i==)
for(register int j=;i*j<n;j++)
a[i*j]=;
}
int c=;
for(register int i=;i<n;i++)
c+=a[i];
printf("%d\n", n-c-);
}
return ;
}
Compilation Error
// 若一个数是N除1以外的因子,那么它不超过N的倍数也是N的因子.
// i找因子,j控制倍数,下标为会员号码. 只有新朋友的值为0.
#include<stdio.h>
int main()
{
int cn, n;
scanf("%d", &cn);
while(cn--)
{
scanf("%d", &n);
int a[]={};
for(int i=;i<=n/;i++)
{
if(n%i==)
for(int j=;i*j<n;j++)
a[i*j]=;
}
int c=;
for(int i=;i<n;i++)
c+=a[i];
printf("%d\n", n-c-);
}
return ;
}
AC
4K - 找新朋友的更多相关文章
- hduoj 1286 找新朋友
http://acm.hdu.edu.cn/showproblem.php?pid=1286 找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...
- hdu 1286:找新朋友(数论,欧拉函数)
找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- hdoj 1286 找新朋友【欧拉函数】
找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- 【欧拉函数】【HDU1286】 找新朋友
找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- hdoj 1286 找新朋友 【数论之欧拉函数】
找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 【HDOJ 1286】找新朋友
找新朋友 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submissi ...
- 欧拉函数之HDU1286找新朋友
找新朋友 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submissi ...
- hdu_1286找新朋友(欧拉定理)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1286 找新朋友 Time Limit: 2000/1000 MS (Java/Others) M ...
- hdu 1286 找新朋友 欧拉函数模版题
找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem Des ...
随机推荐
- MongoDB常用查询,排序,group,SpringDataMongoDB update group
MongoDB查询 指定查询并排序 db.getCollection('location').find({"site.id":"川A12345","s ...
- git gitlab 使用 提交代码解决冲突
1.更改完代码后,git push 发生错误 注: 此时,使用 git pull: 更新代码,git 会自动merge不同的更新, a. 如果git 自动merge成功,再进行 git push操作 ...
- php mysql 查询判断周几
$where .= " and (DAYOFWEEK( from_unixtime(`px_time`, '%Y-%m-%d')) = 1)"; //周日从1开始
- webpack 学习
·1.https://www.2cto.com/kf/201711/696035.html 2. http://blog.csdn.net/x550392236/article/details/784 ...
- bootstrap datatable
<table id="screenTable" data-toggle="table"> <thead> ... </thead& ...
- 04_web基础(三)之进一步理解web
08.BS和CS与Tomcat详细介绍 1.cs与bs架构的简介及区别 CS和BS是软件架构模式:C/S: Client/Server :客户端/服务端架构:B/S: Browser/Server:浏 ...
- Centos7 安装 erlang rabbitmq
1.安装Erlang依赖采用官网的rpm包的形式进行安装,不采用yum(由系统进行自动安装 可能因为版本低的问题而出现一系列问题) erlang依赖 rpm包下载地址https://github.co ...
- Java:类加载机制及反射
一.Java类加载机制 1.概述 Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允 ...
- ServiceWorker.state
[ServiceWorker.state] ServiceWorker.state The state read-only property of the ServiceWorker interfac ...
- yum update 自动忽略内核更新
系统每天凌晨 3 点自动执行 yum update 任务 但升级内核后,会出现下面情况 一些编译软件需要内核模块才能够被调用, 而内核模块需要与当前版本内核编译后才能够使用, 假设内核升级后,之前软件 ...