you o(n) de fang fa