- import java.util.*;
- class main{
- static int[] prim;
- public static void main(String[] args){
- prim = new int[2000];
- Scanner sc = new Scanner(System.in);
- int n = 1 ;
- prim[0] = 1;
- for(int i = 2;i<prim.length;i++){
- boolean P = false ;
- for(int j = 2 ; j < i ; j++)
- if(i%j==0) P=true;//No Prim
- if(!P) prim[n++] = i;
- }
- while(sc.hasNext())
- Print(sc.nextInt() , sc.nextInt());
- }
- static void Print(int N , int C){
- System.out.print(N+" "+C+":");
- int i = 0,count = 0;
- try{
- while(N>=prim[i])
- i++;//size
- if(i%2==0) C = 2*C ;
- else C = 2*C-1 ;
- i = (i-C)/2; //(擁有數量-需要數量=(剩餘數量) )/2 = 起始位置
- while(count<C){
- System.out.print(" "+prim[i]);
- count++;i++;
- }
- }catch(Exception ex){
- i = 0;
- while(N>=prim[i])
- System.out.print(" "+prim[i++]);
- }
- System.out.println("\r\n");
- }
- }
2017年8月15日 星期二
UVA406:Prime Cuts
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。