=begin A permutation is an ordered arrangement of objects. For example, 3124 is one possible permutation of the digits 1, 2, 3 and 4. If all of the permutations are listed numerically or alphabetically, we call it lexicographic order. The lexicographic permutations of 0, 1 and 2 are: 012 021 102 120 201 210 What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9? =end nums = %w(0 1 2 3 4 5 6 7 8 9) @perms = [] @i = 0 def permutations(nums,str) if nums.length == 0 @i += 1 if @i == 1000000 print str end else nums.each do |n| thesenums = nums.clone thesenums.delete(n) permutations(thesenums,str+n) end end end permutations(nums,'')