HDU ACM 2521 反素数 水题+因数打表

HDU ACM 2521 反素数 水题+因子打表

分析:水题,不解释。

#include<iostream>
using namespace std;

int cnt[6000];

void init()         //打表
{
	int i,j;

	memset(cnt,0,sizeof(cnt));
	cnt[1]=1;     //1只有他本身
	for(i=2;i<=5005;i++)
	{
		cnt[i]+=2;      //1和他本身
		for(j=2;j<=i/2;j++)
			if(i%j==0) cnt[i]++;
	}
}

int main()      
{
	int T,a,b,i,max,si;

	cin>>T;
	init();
	while(T--)
	{
		max=0;
		cin>>a>>b;
		for(i=a;i<=b;i++)
			if(max<cnt[i])
			{
				si=i;
				max=cnt[i];
			}
		cout<<si<<endl;
	}
    return 0;      
}