| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
用JAVA的帮看看,WHY RE?要疯了import java.util.*;
public class P1595
{
private static final int MAX = 3000;
public static boolean isPrime(int n)
{
for(int i=2;i<Math.sqrt((double)n)+1;i++)
{
if(n%i==0)
{
return false;
}
}
return true;
}
/**
* @param args
*/
public static void main(String[] args)
{
// TODO 自动生成方法存根
Scanner sc = new Scanner(System.in);
boolean[] primeList=new boolean[MAX];
///////////////建立质数表
primeList[1]=true;
primeList[2]=true;
for(int i=3;i<MAX;i++)
{
if(isPrime(i))
{
primeList[i]=true;
}
}
////////////建立质数表
/////////建立从1到N之间质数个数表
int[] count=new int[MAX];
count[1]=1;
count[2]=2;
for(int i=3;i<MAX;i++)
{
if(isPrime(i))
{
count[i]=count[i-1]+1;
}
else
{
count[i]=count[i-1];
}
}
/////////建立从1到N之间质数个数表
int n=sc.nextInt();
int c=sc.nextInt();
LinkedList<Integer> result=new LinkedList<Integer>();
int index=0;
while(true)
{
index=0;
result.clear();
int cc=c;
if(count[n]%2==0)
{
cc=2*c;
}
else
{
cc=2*c-1;
}
for(int i=1;index<n&&i<=n;i++)
{
if(primeList[i])
{
result.add(i);
index++;
}
}
if(cc>count[n])
{
cc=count[n];
}
System.out.print(n+" "+c+":");
for(int i=(count[n]-cc)/2;i<(count[n]-cc)/2+cc;i++)
{
System.out.print(" "+result.get(i));
}
System.out.println();
System.out.println();
n=sc.nextInt();
c=sc.nextInt();
}
}
}
Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator