def solution(players, callings):
idx_player = {i:player for i,player in enumerate(players)}
player_idx = {player:i for i,player in enumerate(players)}
for i in callings:
cur_idx = player_idx[i]
pre_idx = cur_idx -1
pre_player = idx_player[pre_idx]
cur_player = i
player_idx[cur_player] = pre_idx
player_idx[pre_player] = cur_idx
idx_player[pre_idx] = cur_player
idx_player[cur_idx] = pre_player
return list(idx_player.values())