【郑轻】[1752]Math Three!

来源:互联网 发布:ps cc mac怎么安装啊 编辑:程序博客网 时间:2024/04/30 11:02

这里写图片描述
这里写图片描述

当时认为
“还是暴力~”
刚才也是以为对了……
结果一查是TL超时了……

当时是这样写的:

#include<stdio.h>int main() {    long long int N;    int i;    scanf("%lld",&N);    for(i=1; i<N; i++) {        if((N%(i+1))==0)            break;    }    printf("%d\n",i);    return 0;}

然后重新写了下:
其实本质还是暴力……
但这次只到sqrt(N)
但这样会造成当N为质数时输出错误
所以还需要再加一个判定
AC打码如下:

#include<stdio.h>#include<math.h>int main() {    long long N,K;    double L;    scanf("%lld",&N);    L=sqrt(N);    for(K=1; K<=L; K++) {        if((N%(K+1))==0)            break;    }    if(K<=L)        printf("%lld\n",K);    else        printf("%lld\n",N-1);    return 0;}

这是人家11月份的题啊!!!

题目地址:【郑轻】[1752]Math Three!

0 0