nceil=floor23(n);
floor23(n) returns the first number less than or equal to n, which can be written as a product of powers of 2 and 3.
The algorithm will look up the best size in a table, which is computed the first time the function is run. If the input size is larger than the largest value in the table, the input size will be reduced by factors of 2, until it is in range.
[nceil,table]=floor23(n) additionally returns the table used for lookup.