牛客中的一题判断素数与分解质因子
#include#include #include #include #include #include #include #include #include #define ll long long #define max(a,b) (a)>(b)?(a):(b) #define min(a,b) (a)<(b)?(a):(b) #define LMAX using namespace std; //const int maxn = 100000 + 10; int main() { int T; scanf("%d", &T); int x; bool flag = true; vector ans; while (T--) { scanf("%d", &x); for (int i = 2; i <= sqrt(x); i++) { if (x % i == 0) { flag = false; ans.push_back(i); while (x % i == 0) { x /= i; } } } if (x != 1) ans.push_back(x); if (flag) printf("isprimen"); else printf("noprimen"); for (int i = 0; i < ans.size(); ++i) { printf("%d ", ans[i]); } putchar('n'); ans.clear(); flag = true; } }



