zoj 2520 (暴力,恋爱数)

点击打开链接


如果a的因式分解的和等于b,并且反过来也成立,就说a和b是恋爱数,求第k对恋爱数。。。


暴力打表

#include"stdio.h"
#include"string.h"
#define N 6000000
int a[N];
int b[N][2],t;
void init()
{
	int i,j;
	for(i=1;i<N;i++)
		a[i]=1;
	for(i=2;i<N;i++)
	{
		for(j=i+i;j<N;j+=i)
			a[j]+=i;
	}
	t=0;
	for(i=2;i<N;i++)
	{
		if(a[i]<N&&a[a[i]]==i&&i<a[i])
		{
			b[t][0]=i;
			b[t][1]=a[i];
			t++;
		}
	}
}
int main()
{
	init();
	freopen("out.txt","w",stdout); 
	int i;
	for(i=0;i<t;i++)
		printf("%d,%d,",b[i][0],b[i][1]);
	return 0;
}


输出


#include"stdio.h"
#include"string.h"
#define N 6000000
int a[100][2]={0,0,220,284,1184,1210,2620,2924,5020,
5564,6232,6368,10744,10856,12285,14595,17296,18416,
63020,76084,66928,66992,67095,71145,69615,87633,79750,
88730,100485,124155,122265,139815,122368,123152,141664,
153176,142310,168730,171856,176336,176272,180848,185368,
203432,196724,202444,280540,365084,308620,389924,319550,
430402,356408,399592,437456,455344,469028,486178,503056,
514736,522405,525915,600392,669688,609928,686072,624184,
691256,635624,712216,643336,652664,667964,783556,726104,
796696,802725,863835,879712,901424,898216,980984,947835,
1125765,998104,1043096,1077890,1099390,1154450,1189150,
1156870,1292570,1175265,1438983,1185376,1286744,1280565,
1340235,1328470,1483850,1358595,1486845,1392368,1464592,
1466150,1747930,1468324,1749212,1511930,1598470,1669910,
2062570,1798875,1870245,2082464,2090656,2236570,2429030,
2652728,2941672,2723792,2874064,2728726,3077354,2739704,
2928136,2802416,2947216,2803580,3716164,3276856,3721544,
3606850,3892670,3786904,4300136,3805264,4006736,4238984,
4314616,4246130,4488910,4259750,4445050,4482765,5120595,
4604776,5162744,5123090,5504110,5147032,5843048,5232010,
5799542,5357625,5684679,5385310,5812130,5459176,5495264,};
int main()
{
	int n;
	while(scanf("%d",&n)!=-1)
		printf("%d %d\n",a[n][0],a[n][1]);
	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值