三个WA,70分
查看原帖
三个WA,70分
1097884
shuhao楼主2024/1/25 16:31
#include <cstdio>
using namespace std;

long long n;
int k = 0;

int main()
{
	scanf("%lld", &n);
	for(long long i = 2; i*i <= n; i++)
		if(n%i == 0)
		{
			int t = 0;
			while(n%i == 0)
			{
				n/=i;
				t++;
			}
			if(k == 0) k = 1;
			else printf(" * ");
			if(t == 1) printf("%lld", i);
			else printf("%lld^%d", i, t);
		}
	if(n > 1) printf(" * %d", n);
	
	return 0;
}

为啥啊?

2024/1/25 16:31
加载中...