如何提高程序的效率?
程序代码:
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int i, j, k, n, l, count;
while (scanf ("%d", &n) != EOF)
{
k = 1;
printf ("%d =", n);
if (n == 1 || n == 0)
printf (" %d\n", n);
else
{
for (i = 2; i <= n; i++)
{
count = 0;
l = 1;
for (j = 2; j * j <= i; j++)
{
if (!(i % j))
{
l = 0;
break;
}
}
if (l && !(n % i))
{
while (n && !(n % i))
{
n /= i;
count++;
}
if (count > 1)
{
if (k)
{
printf (" %d^%d", i, count);
k = 0;
}
else
printf (" * %d^%d", i, count);
}
else
{
if (k)
{
printf (" %d", i);
k = 0;
}
else
printf (" * %d", i);
}
}
}
printf ("\n");
}
}
return 0;
}
结果是:Time Limit Exceed
求改进
qq:413306776
qq群:33505437









