VOOZH about

URL: https://www.geeksforgeeks.org/dsa/find-arrangement-queue-given-time/

⇱ Find the arrangement of queue at given time - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Find the arrangement of queue at given time

Last Updated : 27 May, 2022

n people are standing in a queue to buy entry ticket for the carnival. People present there strongly believe in chivalry. Therefore, at time = t, if a man at position x, finds a woman standing behind him then he exchanges his position with her and therefore, at time = t+1, woman is standing at position x while man is standing behind her. 
Given the total number of people standing in a queue as n, particular instant of time as t and the initial arrangement of the queue in the form of a string containing 'M' representing man at position i and 'W' representing woman is at position i, find out the arrangement of the queue at time = t. 
Examples : 
 

Input : n = 6, t = 2
 BBGBBG
Output: GBBGBB
Explanation:
At t = 1, 'B' at position 2 will swap
with 'G' at position 3 and 'B' at 
position 5 will swap with 'G' at 
position 6. String after t = 1 changes 
to "BGBBGB". Now at t = 2, 'B' at
position = 1 will swap with 'G' at 
position = 2 and 'B' at position = 4 
will swap with 'G' at position 5. 
String changes to "GBBGBB". Since, 
we have to display arrangement at
t = 2, the current arrangement is 
our answer. 

Input : n = 8, t = 3
 BBGBGBGB
Output: GGBGBBBB


 


Approach: 
Traverse the entire string at every moment of time from 1 to t and if we find pairwise "BG" then swap them and move to check the next pair. 
Below is the implementation of above approach: 
 

Output: 
 

GBBGBB

Time Complexity: O(n*t)
 Auxiliary Space: O(1)


 

Comment
Article Tags:
Article Tags: