Cod sursa(job #144587)

Utilizator anna_bozianuBozianu Ana anna_bozianu Data 27 februarie 2008 20:01:22
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<stdio.h>
#define gata fcloseall();return 0;
#define citire  FILE *f,*g;f=fopen("ciur.in","r");g=fopen("ciur.out","w");fscanf(f,"%ld",&n);
#define eratostene for(i=2;i<=n;i++)if(!ciur[i]){sol++;for(j=2*i;j<=n;j=j+i)ciur[j]=1;}
#define afis1 if(sol>1000){j=1000;for(i=n;j;i--)if(!ciur[i])prim[j--]=i;for(i=1;i<=1000;i++)fprintf(g,"%ld ",prim[i]);gata}
#define afis2 for(i=2;sol;i++)if(!ciur[i]){fprintf(g,"%ld ",i);sol--;}
char ciur[2000002];
long int n,i,sol,j,prim[1002];
int main()
{       citire
	eratostene
	afis1
	afis2
	gata
}