Distributed Power Allocation with SINR Constraints Using Trial and Error Learning