如何提高程序的效率?
程序代码:
#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