Improving robustness of complex networks by a new capacity allocation strategy