3440 - Nic

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

题目输入


<br />

<br />

题目输出

输入/输出样例

输入格式

2
6
30

输出格式

H
M
6

C++解答

#include<stdio.h>
#include<iostream>
using namespace std;
int a[111111];
int main()
{
	long long n, i;
	int T, cnt;
	scanf("%d", &T);
	while (T--)
	{
		scanf("%lld", &n);
		cnt = 0;
		for (i = 2; i*i <= n; ++i)
		if (n % i == 0)
		while (n % i == 0)
		{
			a[++cnt] = i;       //printf("%d\n", i);
			n /= i;
		}//puts("");
		if (n != 1)
			a[++cnt] = n;
		if (cnt < 2)
			printf("M\n0\n");
		else if (cnt == 2)
			printf("H\n");
		else
			printf("M\n%d\n", a[2] * a[1]);
	}
	return 0;
}