<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=UglyNumbers%2F%EC%9D%B4%EB%8F%99%ED%98%84</id>
	<title>UglyNumbers/이동현 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=UglyNumbers%2F%EC%9D%B4%EB%8F%99%ED%98%84"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=UglyNumbers/%EC%9D%B4%EB%8F%99%ED%98%84&amp;action=history"/>
	<updated>2026-05-14T16:01:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=UglyNumbers/%EC%9D%B4%EB%8F%99%ED%98%84&amp;diff=39936&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:28, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=UglyNumbers/%EC%9D%B4%EB%8F%99%ED%98%84&amp;diff=39936&amp;oldid=prev"/>
		<updated>2021-02-07T05:28:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== [[UglyNumbers]] 소감  ===&lt;br /&gt;
처음엔 어글리넘버의 규칙성을 찾았다. 이것으로 너무나 많은 시간을 허비하고나서&lt;br /&gt;
규칙성은 없다(실제로 없는지는 모름)고 결론.(있었다면 0.1초내로 답이 튀어 나올것이므로 &amp;#039;4초내로&amp;#039;라는 단서도 없었을듯..)&lt;br /&gt;
일단 n번째 어글리넘버 이후의 수들은 이전 어글리넘버에 2나 3이나 5를 곱해서 이루어진다는 것을 가지고 1부터 시작하여&lt;br /&gt;
n번째 수 까지 각각 2,3,5를 곱해나간다.&lt;br /&gt;
&lt;br /&gt;
한가지 이상한점은 10만번째 어글리넘버가 44314690598262522787512975360 이 나오든데&lt;br /&gt;
문제에서 제시한 값과 너무 큰 차이가 나는듯.. 어디가 잘못되었는지 모르겠다.&lt;br /&gt;
&lt;br /&gt;
=== 소스 ===&lt;br /&gt;
 /*&lt;br /&gt;
  * Created on 2005. 3. 30&lt;br /&gt;
  */&lt;br /&gt;
 /**&lt;br /&gt;
  * @author 중앙대 컴퓨터공학과 01 이동현&lt;br /&gt;
  */&lt;br /&gt;
 import java.util.*;&lt;br /&gt;
 import java.math.*;&lt;br /&gt;
 &lt;br /&gt;
 public class UglyNumbers {&lt;br /&gt;
     public ArrayList arr;&lt;br /&gt;
     /**&lt;br /&gt;
      * n을 arr에 삽입하되 중복값이 있으면 아무것도 하지않아.&lt;br /&gt;
      * @param n double 삽입할 값&lt;br /&gt;
      * @return int 코드 1:삽입완료 -1:이미 값 있음 1:맨 마지막에 추가&lt;br /&gt;
      */&lt;br /&gt;
     public int insert(double n) {&lt;br /&gt;
         for (int i = 0; i &amp;amp;lt; arr.size(); i++) {&lt;br /&gt;
             if (((Double) arr.get(i)).doubleValue() &amp;amp;gt; n) {&lt;br /&gt;
                 arr.add(i, new Double(n));&lt;br /&gt;
                 return 1;&lt;br /&gt;
             } else if (((Double) arr.get(i)).doubleValue() == n)&lt;br /&gt;
                 return -1;&lt;br /&gt;
         }&lt;br /&gt;
         arr.add(new Double(n));&lt;br /&gt;
         return 0;&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     public int start() {&lt;br /&gt;
         int index = 1;&lt;br /&gt;
         arr = new ArrayList();&lt;br /&gt;
         arr.add(new Double(1.0));&lt;br /&gt;
         while (index != 1500) {&lt;br /&gt;
             insert(((Double) arr.get(0)).doubleValue() * 2.0);&lt;br /&gt;
             insert(((Double) arr.get(0)).doubleValue() * 3.0);&lt;br /&gt;
             insert(((Double) arr.get(0)).doubleValue() * 5.0);&lt;br /&gt;
             arr.remove(0);&lt;br /&gt;
             index++;&lt;br /&gt;
         }&lt;br /&gt;
         System.out.println(&amp;quot;The 1500&amp;#039;th ugly number is &amp;quot;+new BigDecimal(((Double)arr.get(0)).doubleValue()));// + &amp;quot; &amp;quot; + arr.size());&lt;br /&gt;
         return 0;&lt;br /&gt;
     }&lt;br /&gt;
 &lt;br /&gt;
     public static void main(String[] args) {&lt;br /&gt;
         UglyNumbers ug = new UglyNumbers();&lt;br /&gt;
         ug.start();&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>