This paper proposes a method for dynamically forming teams and assigning appropriate tasks to their members to provide services accomplished by groups of agents of different types. Task or resource allocation in multi-agent systems has drawn attention and has been applied in many areas, such as robot rescue, UAV wireless networks, and distributed computer systems. The proposed method allows agents to belong to more than one team simultaneously for efficiency based on the reciprocal trust relationship, which reflects the past performance of cooperative work, and thus allows each agent to have a queue to undertake multiple tasks. In such a setting, in addition to the communication time, the tasks in the queue can even cause processing delays, leading to instability in the observed information from the leader who selects the team members. Our experimental evaluation shows that the proposed method can efficiently enable stable team formation even in this situation. We also analyze the reasons for this efficiency.