JAVA solution very very ez!
public class Solution {\n        public int integerBreak(int n) {\n            if(n == 2) return 1;\n            if(n == 3) return 2;\n            if(n%3 == 0) 
    public class Solution {\n        public int integerBreak(int n) {\n            if(n == 2) return 1;\n            if(n == 3) return 2;\n            if(n%3 == 0) return (int) Math.pow(3,n/3); \n            else if(n%3 == 1) return ((int)Math.pow(3,n/3))/3*4;\n            else return ((int)Math.pow(3,n/3))*2;\n        }\n    }\nnum 3 is the sum of 1,2 or 1,1,1 and both of the products is less than 3 <br>\nnum 4 is the sum of 2,2 or 1,1,2 or \xb7\xb7\xb7 and all of them is no more than 4 <br>\nthen 5  : 2 x 3 > 5  then 6 : 3 x 3 > 6 <br>\nthis part seems like Greedy?<br>\n\nso make more '3' as a break of n and here comes to the ac solution <br>\nand it seems an O(lgN) solution?
[]