1595.txt

来自「北大ACM题目例程 详细的解答过程 程序实现 算法分析」· 文本 代码 · 共 50 行

TXT
50
字号


#include <stdio.h>

int p[1010];
int sign[1010];

int main()
{
	int i,j,k,a,b,m,c,d;

	k = 0;
	for( i=0; i<=1000; i++ )
		sign[i] = 1;

	p[k++]=1;
	for( i=2; i<=1000; i++ )
	if( sign[i] )
	{
		p[k++] = i;
		for( j=2; i*j<=1000; j++ )
			sign[i*j] = 0;
	}

	m = k;

	while( scanf( "%d %d", &a, &b ) == 2 )
	{
		for(i=0;i<m;i++)
			if(p[i]>a)break;

		printf( "%d %d:", a, b);
		
		if(i%2==0)
			c = i/2-b, d = i/2+b-1;
		else c = i/2-b+1, d = i/2+b-1;

		for( j=(c>0)?c:0; j <= ( (d<i-1)?d:i-1 ); j++ )
			printf(" %d", p[j] );
		
		printf( "\n\n" );
	}

	return 0;
}




⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?