#include <iostream>
using namespace std;
int main() {
int a, b, i;
while (cin >> a)
{
for (i = 2; i < (a / 2); i++)
{
b = 0;
while (a%i == 0)
{
a = a / i;
b++;
}
if (b > 1)
cout << i << "^" << b << "*";
else if (b == 1)
cout << i << "*";
}
cout << a << endl;
}
}
在送出解答後沒有通過
測試到261855這組數字的時候答案為3^2*5*11*23^2
可是我的程式碼會算出3^2*5*11*23^2*1
請問如何不要顯示*1