求问时间复杂度为何错误
  • 板块学术版
  • 楼主11514zbs
  • 当前回复26
  • 已保存回复33
  • 发布时间2024/7/7 12:56
  • 上次更新2024/7/7 15:47:48
查看原帖
求问时间复杂度为何错误
1125106
11514zbs楼主2024/7/7 12:56
#include <cstdio>
bool Is_not_it_a_prime_number(int n)
{
    for (int i = 2; i < n / 2; i++)
    {
        if (!(n % i))
        {
            return 1;
        }
    }
    return 0;
}
int Prime_factorization(int n)
{
    int i, k = n / 2;
    do
    {
        for (i = k; n % i; i--)
        k = i;
    }while (Is_not_it_a_prime_number(i));
    return i;
}

int main()
{
    int n;
    scanf("%d", &n);
    printf("%d", Prime_factorization(n));
    return 0;
}

输入 45(5×9)45(5 \times 9) 就超时了,按理来说应该输出 55 啊?

2024/7/7 12:56
加载中...