ÀÚ¹ÙÇϴ³ðÀÇ ±¸Çö
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.

 
 
import java.util.ArrayList; 
import java.util.LinkedList; 
/* 
 * PrimeNumberMillion.java 
 * 
 * Created on 2006³â 10¿ù 12ÀÏ (¸ñ), ¿ÀÈÄ 3:06 
 * 
 * To change this template, choose Tools | Template Manager 
 * and open the template in the editor. 
 */ 
 
/** 
 * ¹é¸¸ : 260ms 
   õ¸¸ : 6720ms 
 * @author °­¿õºó 
 */ 
public class PrimeNumberMillion { 
    private static int MAX; 
     
    public PrimeNumberMillion() { 
        MAX = 1000000; 
    } 
     
    public int getMax() { 
        return MAX; 
    } 
    public void setMax(int val) { 
        MAX = val; 
    } 
     
    public int[] getPrime() { 
         
        boolean list[] = new boolean[MAX+1]; 
        list[0] = true; 
        list[1] = true; 
         
        for(int number=2; number<MAX/2; number++) { 
            for(int cur=2; cur * number < MAX + 1; cur++) { 
                if(!list[cur*number]) { 
                    list[cur*number] = true; 
                } 
            } 
        } 
         
        int size = 0;; 
        for(int number=1; number<MAX+1; number++) { 
            if(!list[number]) { 
                size++; 
            } 
        } 
         
        int[] result = new int[size]; 
        int cur_pos = 0; 
        for(int number=1; number<MAX+1; number++) { 
            if(!list[number]) { 
                result[cur_pos] = number; 
                cur_pos++; 
            } 
        } 
        return result; 
         
         
    } 
     
    public static void main(String args[]) { 
        PrimeNumberMillion p = new PrimeNumberMillion(); 
        p.setMax(10000000); 
        long time_begin = System.currentTimeMillis(); 
        int[] result = p.getPrime(); 
        long time_end = System.currentTimeMillis(); 
        System.out.println("Time elapsed : "+ (time_end - time_begin) + "ms" ); 
         
        for(int i : result) { 
            //System.out.println(i); 
        } 
    } 
     
} 
     
 
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.