UglyNumbers 감 ¶
규 . 간 고
규 ( )고 결.( 0.1 '4' ..)
n 2 3 5 곱 고 1
n 까 각각 2,3,5 곱간.
규 ( )고 결.( 0.1 '4' ..)
n 2 3 5 곱 고 1
n 까 각각 2,3,5 곱간.
10 44314690598262522787512975360
값과 .. 겠.
값과 .. 겠.
¶
~cpp /* * Created on 2005. 3. 30 */ /** * @author 공과 01 */ import java.util.*; import java.math.*; public class UglyNumbers { public ArrayList arr; /** * n arr 값 . * @param n double 값 * @return int 1: -1: 값 1: */ public int insert(double n) { for (int i = 0; i < arr.size(); i++) { if (((Double) arr.get(i)).doubleValue() > n) { arr.add(i, new Double(n)); return 1; } else if (((Double) arr.get(i)).doubleValue() == n) return -1; } arr.add(new Double(n)); return 0; } public int start() { int index = 1; arr = new ArrayList(); arr.add(new Double(1.0)); while (index != 1500) { insert(((Double) arr.get(0)).doubleValue() * 2.0); insert(((Double) arr.get(0)).doubleValue() * 3.0); insert(((Double) arr.get(0)).doubleValue() * 5.0); arr.remove(0); index++; } System.out.println("The 1500'th ugly number is "+new BigDecimal(((Double)arr.get(0)).doubleValue()));// + " " + arr.size()); return 0; } public static void main(String[] args) { UglyNumbers ug = new UglyNumbers(); ug.start(); } }