/*******************************************************************************
google面试题目:我们把只包含因子2、3和5的数称作丑数(Ugly Number)。
例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。
求按从小到大的顺序的第2012个丑数。


分析:假设数组ugly[N]中存放不断产生的丑数,
初始只有一个丑数ugly[0]=1,由此出发,
下一个丑数由因子2,3,5竞争产生,得到ugly[0]*2,
ugly[0]*3, ugly[0]*5, 显然最小的那个数是新的丑数,
所以第2个丑数为ugly[1]=2,开始新一轮的竞争,
由于上一轮竞争中,因子2获胜,这时因子2应该乘以ugly[1]才显得公平,
得到ugly[1]*2,ugly[0]*3,ugly[0]*5,
因子3获胜,ugly[2]=3,同理,下次竞争时因子3应该乘以ugly[1],
即:ugly[1]*2, ugly[1]*3, ugly[0]*5, 因子5获胜,得到ugly[3]=5,
重复这个过程,直到第n个丑数产生。总之:
每次竞争中有一个(也可能是两个)因子胜出,下一次竞争中
胜出的因子就应该加大惩罚!


本质就是2 ,3 ,5 的乘积的组合,不过要按照顺序组合,
每次都将2,3,5乘以一个已经是丑数的数,
再比较三者的大小,小的进入数组,然后继续比较;
例如:1是丑数,那么下一个斗劲 2 * 1、3 * 1和5*1,
那么获得的是2,2进入数组,下面比较的是2*2、3*1 和5*1
( 重视因为后面的3*1和5*1的大小并不断定,所以还要持续进行比较)
获得3进入数组,再比较 2 * 2、3 * 2和5*1.


感谢网友的评论,发现了程序的问题
是因为int型表示数据范围有限倒置数据溢出,后来改成unsigned long int 仍然溢出
最后只能改成double 了
三者的表示的数据范围如下:


numeric_limits<int>::max --> 2147483647    第1692个丑数越界
 numeric_limits<unsigned long int>::max --> 4294967295  第1849个丑数越界
 numeric_limits<double>::max --> 1.79769e+308 
 


 ************************************************************************/ 
 
 #include<iomanip> // 精度控制头文件 
 
 #include<cstdio> 
 
 #include<iostream> 
 
 #include<cstdlib> 
 
 #include<limits> 
 
 using namespace std; 
 


 /*the smallest in the three*/ 
 
 //无符号长整型    防止数据溢出 
 
 double mymin(double a, double b, double c) 
 
 { 
 
     double temp = (a < b ? a : b); 
 
     return (temp < c ? temp : c); 
 
 } 
 
 //无符号长整型    防止数据溢出 
 
 double FindUgly(int n) 
 
 { 
 
     double* ugly = new double[n]; 
 
     ugly[0] = 1; 
 
     int index2 = 0; 
 
     int index3 = 0; 
 
     int index5 = 0; 
 
     int index = 1; 
 
     while (index < n) 
 
     { 
 
         double val = mymin(ugly[index2]*2, ugly[index3]*3, ugly[index5]*5); 
 
         //竞争产生下一个丑数 
 
         if (val == ugly[index2]*2) 
 
         //将产生这个丑数的index*向后挪一位; 
 
             ++index2; 
 
         if (val == ugly[index3]*3) 
 
         //这里不能用elseif,因为可能有两个最小值,这时都要挪动; 
 
             ++index3; 
 
         if (val == ugly[index5]*5) 
 
             ++index5; 
 
         ugly[index++] = val; 
 
     } 
 
     double result = ugly[n-1]; //ugly[0] = 1  是第一个丑数 
 
     delete[] ugly; 
 
     return result; 
 
 } 
 
 void test1_29() 
 
 { 
 
     for(int i=1;i<30;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<FindUgly(i)<<endl; 
 
 } 
 
 void test1680_1700() 
 
 { 
 
     for(int i=1680;i<1701;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<setprecision(10)<<FindUgly(i)<<endl; 
 
 } 
 
 void test1800_1991() 
 
 { 
 
     for(int i=1800;i<1991;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<setprecision(10)<<FindUgly(i)<<endl; 
 
 } 
 
 void test1991_2013() 
 
 { 
 
     for(int i=1991;i<2014;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<setprecision(10)<<FindUgly(i)<<endl; 
 
 } 
 
 int main() 
 
 { 
 
     cout<<"numeric_limits<int>::max --> " 
 
         <<(std::numeric_limits<int>::max)()<<endl; 
 
     cout<< "numeric_limits<unsigned long int>::max --> " 
 
         <<(std::numeric_limits<unsigned long int>::max)()<<endl; 
 
     cout<< "numeric_limits<double>::max --> " 
 
         <<(std::numeric_limits<double>::max)()<<endl; 
 
     test1_29(); 
 
     cout<<endl<<"----------------------------"<<endl; 
 
     test1680_1700(); 
 
     cout<<endl<<"----------------------------"<<endl; 
 
     test1800_1991(); 
 
     cout<<endl<<"----------------------------"<<endl; 
 
     test1991_2013(); 
 






     return 0; 
 


 } 
 
 /*************************** 
 
 numeric_limits<int>::max --> 2147483647 
 
 numeric_limits<unsigned long int>::max --> 4294967295 
 
 numeric_limits<double>::max --> 1.79769e+308 
 
 the 1 th ugly number is 1 
 
 the 2 th ugly number is 2 
 
 the 3 th ugly number is 3 
 
 the 4 th ugly number is 4 
 
 the 5 th ugly number is 5 
 
 the 6 th ugly number is 6 
 
 the 7 th ugly number is 8 
 
 the 8 th ugly number is 9 
 
 the 9 th ugly number is 10 
 
 the 10 th ugly number is 12 
 
 the 11 th ugly number is 15 
 
 the 12 th ugly number is 16 
 
 the 13 th ugly number is 18 
 
 the 14 th ugly number is 20 
 
 the 15 th ugly number is 24 
 
 the 16 th ugly number is 25 
 
 the 17 th ugly number is 27 
 
 the 18 th ugly number is 30 
 
 the 19 th ugly number is 32 
 
 the 20 th ugly number is 36 
 
 the 21 th ugly number is 40 
 
 the 22 th ugly number is 45 
 
 the 23 th ugly number is 48 
 
 the 24 th ugly number is 50 
 
 the 25 th ugly number is 54 
 
 the 26 th ugly number is 60 
 
 the 27 th ugly number is 64 
 
 the 28 th ugly number is 72 
 
 the 29 th ugly number is 75 
 


 ---------------------------- 
 
 the 1680 th ugly number is 2025000000 
 
 the 1681 th ugly number is 2038431744 
 
 the 1682 th ugly number is 2040733440 
 
 the 1683 th ugly number is 2048000000 
 
 the 1684 th ugly number is 2050312500 
 
 the 1685 th ugly number is 2066242608 
 
 the 1686 th ugly number is 2073600000 
 
 the 1687 th ugly number is 2097152000 
 
 the 1688 th ugly number is 2099520000 
 
 the 1689 th ugly number is 2109375000 
 
 the 1690 th ugly number is 2123366400 
 
 the 1691 th ugly number is 2125764000 
 
 the 1692 th ugly number is 2147483648 
 
 the 1693 th ugly number is 2149908480 
 
 the 1694 th ugly number is 2152336050 
 
 the 1695 th ugly number is 2160000000 
 
 the 1696 th ugly number is 2176782336 
 
 the 1697 th ugly number is 2187000000 
 
 the 1698 th ugly number is 2197265625 
 
 the 1699 th ugly number is 2211840000 
 
 the 1700 th ugly number is 2214337500 
 


 ---------------------------- 
 
 the 1800 th ugly number is 3456000000 
 
 the 1801 th ugly number is 3486784401 
 
 the 1802 th ugly number is 3499200000 
 
 the 1803 th ugly number is 3515625000 
 
 the 1804 th ugly number is 3538944000 
 
 the 1805 th ugly number is 3542940000 
 
 the 1806 th ugly number is 3583180800 
 
 the 1807 th ugly number is 3587226750 
 
 the 1808 th ugly number is 3600000000 
 
 the 1809 th ugly number is 3623878656 
 
 the 1810 th ugly number is 3627970560 
 
 the 1811 th ugly number is 3645000000 
 
 the 1812 th ugly number is 3662109375 
 
 the 1813 th ugly number is 3673320192 
 
 the 1814 th ugly number is 3686400000 
 
 the 1815 th ugly number is 3690562500 
 
 the 1816 th ugly number is 3732480000 
 
 the 1817 th ugly number is 3750000000 
 
 the 1818 th ugly number is 3774873600 
 
 the 1819 th ugly number is 3779136000 
 
 the 1820 th ugly number is 3796875000 
 
 the 1821 th ugly number is 3822059520 
 
 the 1822 th ugly number is 3826375200 
 
 the 1823 th ugly number is 3840000000 
 
 the 1824 th ugly number is 3869835264 
 
 the 1825 th ugly number is 3874204890 
 
 the 1826 th ugly number is 3888000000 
 
 the 1827 th ugly number is 3906250000 
 
 the 1828 th ugly number is 3932160000 
 
 the 1829 th ugly number is 3936600000 
 
 the 1830 th ugly number is 3955078125 
 
 the 1831 th ugly number is 3981312000 
 
 the 1832 th ugly number is 3985807500 
 
 the 1833 th ugly number is 4000000000 
 
 the 1834 th ugly number is 4026531840 
 
 the 1835 th ugly number is 4031078400 
 
 the 1836 th ugly number is 4050000000 
 
 the 1837 th ugly number is 4076863488 
 
 the 1838 th ugly number is 4081466880 
 
 the 1839 th ugly number is 4096000000 
 
 the 1840 th ugly number is 4100625000 
 
 the 1841 th ugly number is 4132485216 
 
 the 1842 th ugly number is 4147200000 
 
 the 1843 th ugly number is 4194304000 
 
 the 1844 th ugly number is 4199040000 
 
 the 1845 th ugly number is 4218750000 
 
 the 1846 th ugly number is 4246732800 
 
 the 1847 th ugly number is 4251528000 
 
 the 1848 th ugly number is 4271484375 
 
 the 1849 th ugly number is 4294967296 
 
 the 1850 th ugly number is 4299816960 
 
 the 1851 th ugly number is 4304672100 
 
 the 1852 th ugly number is 4320000000 
 
 the 1853 th ugly number is 4353564672 
 
 the 1854 th ugly number is 4374000000 
 
 the 1855 th ugly number is 4394531250 
 
 the 1856 th ugly number is 4423680000 
 
 the 1857 th ugly number is 4428675000 
 
 the 1858 th ugly number is 4478976000 
 
 the 1859 th ugly number is 4500000000 
 
 the 1860 th ugly number is 4529848320 
 
 the 1861 th ugly number is 4534963200 
 
 the 1862 th ugly number is 4556250000 
 
 the 1863 th ugly number is 4586471424 
 
 the 1864 th ugly number is 4591650240 
 
 the 1865 th ugly number is 4608000000 
 
 the 1866 th ugly number is 4613203125 
 
 the 1867 th ugly number is 4649045868 
 
 the 1868 th ugly number is 4665600000 
 
 the 1869 th ugly number is 4687500000 
 
 the 1870 th ugly number is 4718592000 
 
 the 1871 th ugly number is 4723920000 
 
 the 1872 th ugly number is 4746093750 
 
 the 1873 th ugly number is 4777574400 
 
 the 1874 th ugly number is 4782969000 
 
 the 1875 th ugly number is 4800000000 
 
 the 1876 th ugly number is 4831838208 
 
 the 1877 th ugly number is 4837294080 
 
 the 1878 th ugly number is 4860000000 
 
 the 1879 th ugly number is 4882812500 
 
 the 1880 th ugly number is 4897760256 
 
 the 1881 th ugly number is 4915200000 
 
 the 1882 th ugly number is 4920750000 
 
 the 1883 th ugly number is 4976640000 
 
 the 1884 th ugly number is 4982259375 
 
 the 1885 th ugly number is 5000000000 
 
 the 1886 th ugly number is 5033164800 
 
 the 1887 th ugly number is 5038848000 
 
 the 1888 th ugly number is 5062500000 
 
 the 1889 th ugly number is 5096079360 
 
 the 1890 th ugly number is 5101833600 
 
 the 1891 th ugly number is 5120000000 
 
 the 1892 th ugly number is 5125781250 
 
 the 1893 th ugly number is 5159780352 
 
 the 1894 th ugly number is 5165606520 
 
 the 1895 th ugly number is 5184000000 
 
 the 1896 th ugly number is 5242880000 
 
 the 1897 th ugly number is 5248800000 
 
 the 1898 th ugly number is 5273437500 
 
 the 1899 th ugly number is 5308416000 
 
 the 1900 th ugly number is 5314410000 
 
 the 1901 th ugly number is 5368709120 
 
 the 1902 th ugly number is 5374771200 
 
 the 1903 th ugly number is 5380840125 
 
 the 1904 th ugly number is 5400000000 
 
 the 1905 th ugly number is 5435817984 
 
 the 1906 th ugly number is 5441955840 
 
 the 1907 th ugly number is 5467500000 
 
 the 1908 th ugly number is 5509980288 
 
 the 1909 th ugly number is 5529600000 
 
 the 1910 th ugly number is 5535843750 
 
 the 1911 th ugly number is 5598720000 
 
 the 1912 th ugly number is 5625000000 
 
 the 1913 th ugly number is 5662310400 
 
 the 1914 th ugly number is 5668704000 
 
 the 1915 th ugly number is 5695312500 
 
 the 1916 th ugly number is 5733089280 
 
 the 1917 th ugly number is 5739562800 
 
 the 1918 th ugly number is 5760000000 
 
 the 1919 th ugly number is 5804752896 
 
 the 1920 th ugly number is 5811307335 
 
 the 1921 th ugly number is 5832000000 
 
 the 1922 th ugly number is 5859375000 
 
 the 1923 th ugly number is 5898240000 
 
 the 1924 th ugly number is 5904900000 
 
 the 1925 th ugly number is 5971968000 
 
 the 1926 th ugly number is 5978711250 
 
 the 1927 th ugly number is 6000000000 
 
 the 1928 th ugly number is 6039797760 
 
 the 1929 th ugly number is 6046617600 
 
 the 1930 th ugly number is 6075000000 
 
 the 1931 th ugly number is 6103515625 
 
 the 1932 th ugly number is 6115295232 
 
 the 1933 th ugly number is 6122200320 
 
 the 1934 th ugly number is 6144000000 
 
 the 1935 th ugly number is 6150937500 
 
 the 1936 th ugly number is 6198727824 
 
 the 1937 th ugly number is 6220800000 
 
 the 1938 th ugly number is 6250000000 
 
 the 1939 th ugly number is 6291456000 
 
 the 1940 th ugly number is 6298560000 
 
 the 1941 th ugly number is 6328125000 
 
 the 1942 th ugly number is 6370099200 
 
 the 1943 th ugly number is 6377292000 
 
 the 1944 th ugly number is 6400000000 
 
 the 1945 th ugly number is 6442450944 
 
 the 1946 th ugly number is 6449725440 
 
 the 1947 th ugly number is 6457008150 
 
 the 1948 th ugly number is 6480000000 
 
 the 1949 th ugly number is 6530347008 
 
 the 1950 th ugly number is 6553600000 
 
 the 1951 th ugly number is 6561000000 
 
 the 1952 th ugly number is 6591796875 
 
 the 1953 th ugly number is 6635520000 
 
 the 1954 th ugly number is 6643012500 
 
 the 1955 th ugly number is 6710886400 
 
 the 1956 th ugly number is 6718464000 
 
 the 1957 th ugly number is 6750000000 
 
 the 1958 th ugly number is 6794772480 
 
 the 1959 th ugly number is 6802444800 
 
 the 1960 th ugly number is 6834375000 
 
 the 1961 th ugly number is 6879707136 
 
 the 1962 th ugly number is 6887475360 
 
 the 1963 th ugly number is 6912000000 
 
 the 1964 th ugly number is 6973568802 
 
 the 1965 th ugly number is 6998400000 
 
 the 1966 th ugly number is 7031250000 
 
 the 1967 th ugly number is 7077888000 
 
 the 1968 th ugly number is 7085880000 
 
 the 1969 th ugly number is 7119140625 
 
 the 1970 th ugly number is 7166361600 
 
 the 1971 th ugly number is 7174453500 
 
 the 1972 th ugly number is 7200000000 
 
 the 1973 th ugly number is 7247757312 
 
 the 1974 th ugly number is 7255941120 
 
 the 1975 th ugly number is 7290000000 
 
 the 1976 th ugly number is 7324218750 
 
 the 1977 th ugly number is 7346640384 
 
 the 1978 th ugly number is 7372800000 
 
 the 1979 th ugly number is 7381125000 
 
 the 1980 th ugly number is 7464960000 
 
 the 1981 th ugly number is 7500000000 
 
 the 1982 th ugly number is 7549747200 
 
 the 1983 th ugly number is 7558272000 
 
 the 1984 th ugly number is 7593750000 
 
 the 1985 th ugly number is 7644119040 
 
 the 1986 th ugly number is 7652750400 
 
 the 1987 th ugly number is 7680000000 
 
 the 1988 th ugly number is 7688671875 
 
 the 1989 th ugly number is 7739670528 
 
 the 1990 th ugly number is 7748409780 
 


 ---------------------------- 
 
 the 1991 th ugly number is 7776000000 
 
 the 1992 th ugly number is 7812500000 
 
 the 1993 th ugly number is 7864320000 
 
 the 1994 th ugly number is 7873200000 
 
 the 1995 th ugly number is 7910156250 
 
 the 1996 th ugly number is 7962624000 
 
 the 1997 th ugly number is 7971615000 
 
 the 1998 th ugly number is 8000000000 
 
 the 1999 th ugly number is 8053063680 
 
 the 2000 th ugly number is 8062156800 
 
 the 2001 th ugly number is 8100000000 
 
 the 2002 th ugly number is 8153726976 
 
 the 2003 th ugly number is 8162933760 
 
 the 2004 th ugly number is 8192000000 
 
 the 2005 th ugly number is 8201250000 
 
 the 2006 th ugly number is 8264970432 
 
 the 2007 th ugly number is 8294400000 
 
 the 2008 th ugly number is 8303765625 
 
 the 2009 th ugly number is 8388608000 
 
 the 2010 th ugly number is 8398080000 
 
 the 2011 th ugly number is 8437500000 
 
 the 2012 th ugly number is 8493465600 
 
 the 2013 th ugly number is 8503056000 
 


 Process returned 0 (0x0)   execution time : 1.427 s 
 
 Press any key to continue. 
 




 ****************************/ 
        
  /*******************************************************************************

google面试题目:我们把只包含因子2、3和5的数称作丑数(Ugly Number)。


例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。


求按从小到大的顺序的第2012个丑数。




分析:假设数组ugly[N]中存放不断产生的丑数,


初始只有一个丑数ugly[0]=1,由此出发,


下一个丑数由因子2,3,5竞争产生,得到ugly[0]*2,


ugly[0]*3, ugly[0]*5, 显然最小的那个数是新的丑数,


所以第2个丑数为ugly[1]=2,开始新一轮的竞争,


由于上一轮竞争中,因子2获胜,这时因子2应该乘以ugly[1]才显得公平,


得到ugly[1]*2,ugly[0]*3,ugly[0]*5,


因子3获胜,ugly[2]=3,同理,下次竞争时因子3应该乘以ugly[1],


即:ugly[1]*2, ugly[1]*3, ugly[0]*5, 因子5获胜,得到ugly[3]=5,


重复这个过程,直到第n个丑数产生。总之:


每次竞争中有一个(也可能是两个)因子胜出,下一次竞争中


胜出的因子就应该加大惩罚!




本质就是2 ,3 ,5 的乘积的组合,不过要按照顺序组合,


每次都将2,3,5乘以一个已经是丑数的数,


再比较三者的大小,小的进入数组,然后继续比较;


例如:1是丑数,那么下一个斗劲 2 * 1、3 * 1和5*1,


那么获得的是2,2进入数组,下面比较的是2*2、3*1 和5*1


( 重视因为后面的3*1和5*1的大小并不断定,所以还要持续进行比较)


获得3进入数组,再比较 2 * 2、3 * 2和5*1.




感谢网友的评论,发现了程序的问题

是因为int型表示数据范围有限倒置数据溢出,后来改成unsigned long int 仍然溢出

最后只能改成double 了

三者的表示的数据范围如下:




numeric_limits<int>::max --> 2147483647    第1692个丑数越界
 numeric_limits<unsigned long int>::max --> 4294967295  第1849个丑数越界
 numeric_limits<double>::max --> 1.79769e+308 
 


 ************************************************************************/ 
 
 #include<iomanip> // 精度控制头文件 
 
 #include<cstdio> 
 
 #include<iostream> 
 
 #include<cstdlib> 
 
 #include<limits> 
 
 using namespace std; 
 


 /*the smallest in the three*/ 
 
 //无符号长整型    防止数据溢出 
 
 double mymin(double a, double b, double c) 
 
 { 
 
     double temp = (a < b ? a : b); 
 
     return (temp < c ? temp : c); 
 
 } 
 
 //无符号长整型    防止数据溢出 
 
 double FindUgly(int n) 
 
 { 
 
     double* ugly = new double[n]; 
 
     ugly[0] = 1; 
 
     int index2 = 0; 
 
     int index3 = 0; 
 
     int index5 = 0; 
 
     int index = 1; 
 
     while (index < n) 
 
     { 
 
         double val = mymin(ugly[index2]*2, ugly[index3]*3, ugly[index5]*5); 
 
         //竞争产生下一个丑数 
 
         if (val == ugly[index2]*2) 
 
         //将产生这个丑数的index*向后挪一位; 
 
             ++index2; 
 
         if (val == ugly[index3]*3) 
 
         //这里不能用elseif,因为可能有两个最小值,这时都要挪动; 
 
             ++index3; 
 
         if (val == ugly[index5]*5) 
 
             ++index5; 
 
         ugly[index++] = val; 
 
     } 
 
     double result = ugly[n-1]; //ugly[0] = 1  是第一个丑数 
 
     delete[] ugly; 
 
     return result; 
 
 } 
 
 void test1_29() 
 
 { 
 
     for(int i=1;i<30;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<FindUgly(i)<<endl; 
 
 } 
 
 void test1680_1700() 
 
 { 
 
     for(int i=1680;i<1701;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<setprecision(10)<<FindUgly(i)<<endl; 
 
 } 
 
 void test1800_1991() 
 
 { 
 
     for(int i=1800;i<1991;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<setprecision(10)<<FindUgly(i)<<endl; 
 
 } 
 
 void test1991_2013() 
 
 { 
 
     for(int i=1991;i<2014;i++) 
 
     cout<<"the "<<i<<" th ugly number is "<<setprecision(10)<<FindUgly(i)<<endl; 
 
 } 
 
 int main() 
 
 { 
 
     cout<<"numeric_limits<int>::max --> " 
 
         <<(std::numeric_limits<int>::max)()<<endl; 
 
     cout<< "numeric_limits<unsigned long int>::max --> " 
 
         <<(std::numeric_limits<unsigned long int>::max)()<<endl; 
 
     cout<< "numeric_limits<double>::max --> " 
 
         <<(std::numeric_limits<double>::max)()<<endl; 
 
     test1_29(); 
 
     cout<<endl<<"----------------------------"<<endl; 
 
     test1680_1700(); 
 
     cout<<endl<<"----------------------------"<<endl; 
 
     test1800_1991(); 
 
     cout<<endl<<"----------------------------"<<endl; 
 
     test1991_2013(); 
 






     return 0; 
 


 } 
 
 /*************************** 
 
 numeric_limits<int>::max --> 2147483647 
 
 numeric_limits<unsigned long int>::max --> 4294967295 
 
 numeric_limits<double>::max --> 1.79769e+308 
 
 the 1 th ugly number is 1 
 
 the 2 th ugly number is 2 
 
 the 3 th ugly number is 3 
 
 the 4 th ugly number is 4 
 
 the 5 th ugly number is 5 
 
 the 6 th ugly number is 6 
 
 the 7 th ugly number is 8 
 
 the 8 th ugly number is 9 
 
 the 9 th ugly number is 10 
 
 the 10 th ugly number is 12 
 
 the 11 th ugly number is 15 
 
 the 12 th ugly number is 16 
 
 the 13 th ugly number is 18 
 
 the 14 th ugly number is 20 
 
 the 15 th ugly number is 24 
 
 the 16 th ugly number is 25 
 
 the 17 th ugly number is 27 
 
 the 18 th ugly number is 30 
 
 the 19 th ugly number is 32 
 
 the 20 th ugly number is 36 
 
 the 21 th ugly number is 40 
 
 the 22 th ugly number is 45 
 
 the 23 th ugly number is 48 
 
 the 24 th ugly number is 50 
 
 the 25 th ugly number is 54 
 
 the 26 th ugly number is 60 
 
 the 27 th ugly number is 64 
 
 the 28 th ugly number is 72 
 
 the 29 th ugly number is 75 
 


 ---------------------------- 
 
 the 1680 th ugly number is 2025000000 
 
 the 1681 th ugly number is 2038431744 
 
 the 1682 th ugly number is 2040733440 
 
 the 1683 th ugly number is 2048000000 
 
 the 1684 th ugly number is 2050312500 
 
 the 1685 th ugly number is 2066242608 
 
 the 1686 th ugly number is 2073600000 
 
 the 1687 th ugly number is 2097152000 
 
 the 1688 th ugly number is 2099520000 
 
 the 1689 th ugly number is 2109375000 
 
 the 1690 th ugly number is 2123366400 
 
 the 1691 th ugly number is 2125764000 
 
 the 1692 th ugly number is 2147483648 
 
 the 1693 th ugly number is 2149908480 
 
 the 1694 th ugly number is 2152336050 
 
 the 1695 th ugly number is 2160000000 
 
 the 1696 th ugly number is 2176782336 
 
 the 1697 th ugly number is 2187000000 
 
 the 1698 th ugly number is 2197265625 
 
 the 1699 th ugly number is 2211840000 
 
 the 1700 th ugly number is 2214337500 
 


 ---------------------------- 
 
 the 1800 th ugly number is 3456000000 
 
 the 1801 th ugly number is 3486784401 
 
 the 1802 th ugly number is 3499200000 
 
 the 1803 th ugly number is 3515625000 
 
 the 1804 th ugly number is 3538944000 
 
 the 1805 th ugly number is 3542940000 
 
 the 1806 th ugly number is 3583180800 
 
 the 1807 th ugly number is 3587226750 
 
 the 1808 th ugly number is 3600000000 
 
 the 1809 th ugly number is 3623878656 
 
 the 1810 th ugly number is 3627970560 
 
 the 1811 th ugly number is 3645000000 
 
 the 1812 th ugly number is 3662109375 
 
 the 1813 th ugly number is 3673320192 
 
 the 1814 th ugly number is 3686400000 
 
 the 1815 th ugly number is 3690562500 
 
 the 1816 th ugly number is 3732480000 
 
 the 1817 th ugly number is 3750000000 
 
 the 1818 th ugly number is 3774873600 
 
 the 1819 th ugly number is 3779136000 
 
 the 1820 th ugly number is 3796875000 
 
 the 1821 th ugly number is 3822059520 
 
 the 1822 th ugly number is 3826375200 
 
 the 1823 th ugly number is 3840000000 
 
 the 1824 th ugly number is 3869835264 
 
 the 1825 th ugly number is 3874204890 
 
 the 1826 th ugly number is 3888000000 
 
 the 1827 th ugly number is 3906250000 
 
 the 1828 th ugly number is 3932160000 
 
 the 1829 th ugly number is 3936600000 
 
 the 1830 th ugly number is 3955078125 
 
 the 1831 th ugly number is 3981312000 
 
 the 1832 th ugly number is 3985807500 
 
 the 1833 th ugly number is 4000000000 
 
 the 1834 th ugly number is 4026531840 
 
 the 1835 th ugly number is 4031078400 
 
 the 1836 th ugly number is 4050000000 
 
 the 1837 th ugly number is 4076863488 
 
 the 1838 th ugly number is 4081466880 
 
 the 1839 th ugly number is 4096000000 
 
 the 1840 th ugly number is 4100625000 
 
 the 1841 th ugly number is 4132485216 
 
 the 1842 th ugly number is 4147200000 
 
 the 1843 th ugly number is 4194304000 
 
 the 1844 th ugly number is 4199040000 
 
 the 1845 th ugly number is 4218750000 
 
 the 1846 th ugly number is 4246732800 
 
 the 1847 th ugly number is 4251528000 
 
 the 1848 th ugly number is 4271484375 
 
 the 1849 th ugly number is 4294967296 
 
 the 1850 th ugly number is 4299816960 
 
 the 1851 th ugly number is 4304672100 
 
 the 1852 th ugly number is 4320000000 
 
 the 1853 th ugly number is 4353564672 
 
 the 1854 th ugly number is 4374000000 
 
 the 1855 th ugly number is 4394531250 
 
 the 1856 th ugly number is 4423680000 
 
 the 1857 th ugly number is 4428675000 
 
 the 1858 th ugly number is 4478976000 
 
 the 1859 th ugly number is 4500000000 
 
 the 1860 th ugly number is 4529848320 
 
 the 1861 th ugly number is 4534963200 
 
 the 1862 th ugly number is 4556250000 
 
 the 1863 th ugly number is 4586471424 
 
 the 1864 th ugly number is 4591650240 
 
 the 1865 th ugly number is 4608000000 
 
 the 1866 th ugly number is 4613203125 
 
 the 1867 th ugly number is 4649045868 
 
 the 1868 th ugly number is 4665600000 
 
 the 1869 th ugly number is 4687500000 
 
 the 1870 th ugly number is 4718592000 
 
 the 1871 th ugly number is 4723920000 
 
 the 1872 th ugly number is 4746093750 
 
 the 1873 th ugly number is 4777574400 
 
 the 1874 th ugly number is 4782969000 
 
 the 1875 th ugly number is 4800000000 
 
 the 1876 th ugly number is 4831838208 
 
 the 1877 th ugly number is 4837294080 
 
 the 1878 th ugly number is 4860000000 
 
 the 1879 th ugly number is 4882812500 
 
 the 1880 th ugly number is 4897760256 
 
 the 1881 th ugly number is 4915200000 
 
 the 1882 th ugly number is 4920750000 
 
 the 1883 th ugly number is 4976640000 
 
 the 1884 th ugly number is 4982259375 
 
 the 1885 th ugly number is 5000000000 
 
 the 1886 th ugly number is 5033164800 
 
 the 1887 th ugly number is 5038848000 
 
 the 1888 th ugly number is 5062500000 
 
 the 1889 th ugly number is 5096079360 
 
 the 1890 th ugly number is 5101833600 
 
 the 1891 th ugly number is 5120000000 
 
 the 1892 th ugly number is 5125781250 
 
 the 1893 th ugly number is 5159780352 
 
 the 1894 th ugly number is 5165606520 
 
 the 1895 th ugly number is 5184000000 
 
 the 1896 th ugly number is 5242880000 
 
 the 1897 th ugly number is 5248800000 
 
 the 1898 th ugly number is 5273437500 
 
 the 1899 th ugly number is 5308416000 
 
 the 1900 th ugly number is 5314410000 
 
 the 1901 th ugly number is 5368709120 
 
 the 1902 th ugly number is 5374771200 
 
 the 1903 th ugly number is 5380840125 
 
 the 1904 th ugly number is 5400000000 
 
 the 1905 th ugly number is 5435817984 
 
 the 1906 th ugly number is 5441955840 
 
 the 1907 th ugly number is 5467500000 
 
 the 1908 th ugly number is 5509980288 
 
 the 1909 th ugly number is 5529600000 
 
 the 1910 th ugly number is 5535843750 
 
 the 1911 th ugly number is 5598720000 
 
 the 1912 th ugly number is 5625000000 
 
 the 1913 th ugly number is 5662310400 
 
 the 1914 th ugly number is 5668704000 
 
 the 1915 th ugly number is 5695312500 
 
 the 1916 th ugly number is 5733089280 
 
 the 1917 th ugly number is 5739562800 
 
 the 1918 th ugly number is 5760000000 
 
 the 1919 th ugly number is 5804752896 
 
 the 1920 th ugly number is 5811307335 
 
 the 1921 th ugly number is 5832000000 
 
 the 1922 th ugly number is 5859375000 
 
 the 1923 th ugly number is 5898240000 
 
 the 1924 th ugly number is 5904900000 
 
 the 1925 th ugly number is 5971968000 
 
 the 1926 th ugly number is 5978711250 
 
 the 1927 th ugly number is 6000000000 
 
 the 1928 th ugly number is 6039797760 
 
 the 1929 th ugly number is 6046617600 
 
 the 1930 th ugly number is 6075000000 
 
 the 1931 th ugly number is 6103515625 
 
 the 1932 th ugly number is 6115295232 
 
 the 1933 th ugly number is 6122200320 
 
 the 1934 th ugly number is 6144000000 
 
 the 1935 th ugly number is 6150937500 
 
 the 1936 th ugly number is 6198727824 
 
 the 1937 th ugly number is 6220800000 
 
 the 1938 th ugly number is 6250000000 
 
 the 1939 th ugly number is 6291456000 
 
 the 1940 th ugly number is 6298560000 
 
 the 1941 th ugly number is 6328125000 
 
 the 1942 th ugly number is 6370099200 
 
 the 1943 th ugly number is 6377292000 
 
 the 1944 th ugly number is 6400000000 
 
 the 1945 th ugly number is 6442450944 
 
 the 1946 th ugly number is 6449725440 
 
 the 1947 th ugly number is 6457008150 
 
 the 1948 th ugly number is 6480000000 
 
 the 1949 th ugly number is 6530347008 
 
 the 1950 th ugly number is 6553600000 
 
 the 1951 th ugly number is 6561000000 
 
 the 1952 th ugly number is 6591796875 
 
 the 1953 th ugly number is 6635520000 
 
 the 1954 th ugly number is 6643012500 
 
 the 1955 th ugly number is 6710886400 
 
 the 1956 th ugly number is 6718464000 
 
 the 1957 th ugly number is 6750000000 
 
 the 1958 th ugly number is 6794772480 
 
 the 1959 th ugly number is 6802444800 
 
 the 1960 th ugly number is 6834375000 
 
 the 1961 th ugly number is 6879707136 
 
 the 1962 th ugly number is 6887475360 
 
 the 1963 th ugly number is 6912000000 
 
 the 1964 th ugly number is 6973568802 
 
 the 1965 th ugly number is 6998400000 
 
 the 1966 th ugly number is 7031250000 
 
 the 1967 th ugly number is 7077888000 
 
 the 1968 th ugly number is 7085880000 
 
 the 1969 th ugly number is 7119140625 
 
 the 1970 th ugly number is 7166361600 
 
 the 1971 th ugly number is 7174453500 
 
 the 1972 th ugly number is 7200000000 
 
 the 1973 th ugly number is 7247757312 
 
 the 1974 th ugly number is 7255941120 
 
 the 1975 th ugly number is 7290000000 
 
 the 1976 th ugly number is 7324218750 
 
 the 1977 th ugly number is 7346640384 
 
 the 1978 th ugly number is 7372800000 
 
 the 1979 th ugly number is 7381125000 
 
 the 1980 th ugly number is 7464960000 
 
 the 1981 th ugly number is 7500000000 
 
 the 1982 th ugly number is 7549747200 
 
 the 1983 th ugly number is 7558272000 
 
 the 1984 th ugly number is 7593750000 
 
 the 1985 th ugly number is 7644119040 
 
 the 1986 th ugly number is 7652750400 
 
 the 1987 th ugly number is 7680000000 
 
 the 1988 th ugly number is 7688671875 
 
 the 1989 th ugly number is 7739670528 
 
 the 1990 th ugly number is 7748409780 
 


 ---------------------------- 
 
 the 1991 th ugly number is 7776000000 
 
 the 1992 th ugly number is 7812500000 
 
 the 1993 th ugly number is 7864320000 
 
 the 1994 th ugly number is 7873200000 
 
 the 1995 th ugly number is 7910156250 
 
 the 1996 th ugly number is 7962624000 
 
 the 1997 th ugly number is 7971615000 
 
 the 1998 th ugly number is 8000000000 
 
 the 1999 th ugly number is 8053063680 
 
 the 2000 th ugly number is 8062156800 
 
 the 2001 th ugly number is 8100000000 
 
 the 2002 th ugly number is 8153726976 
 
 the 2003 th ugly number is 8162933760 
 
 the 2004 th ugly number is 8192000000 
 
 the 2005 th ugly number is 8201250000 
 
 the 2006 th ugly number is 8264970432 
 
 the 2007 th ugly number is 8294400000 
 
 the 2008 th ugly number is 8303765625 
 
 the 2009 th ugly number is 8388608000 
 
 the 2010 th ugly number is 8398080000 
 
 the 2011 th ugly number is 8437500000 
 
 the 2012 th ugly number is 8493465600 
 
 the 2013 th ugly number is 8503056000 
 


 Process returned 0 (0x0)   execution time : 1.427 s 
 
 Press any key to continue. 
 




 ****************************/