Loading problem...
A profile feed service needs a deterministic presentation order for a batch of user records. The data team stores user IDs and a gender bucket, then asks the query layer to emit rows in a strict repeating sequence.
Table: Genders
Data guarantee:
Task: Reorder rows so the final output cycles in this exact pattern: female, then other, then male, and repeat.
Ordering rule inside each category:
Output requirements:
Supported submission environments:
Genders:
| user_id | gender |
|---------|--------|
| 4 | male |
| 7 | female |
| 2 | other |
| 5 | male |
| 3 | female |
| 8 | male |
| 6 | other |
| 1 | other |
| 9 | female |[
{"user_id":3,"gender":"female"},
{"user_id":1,"gender":"other"},
{"user_id":4,"gender":"male"},
{"user_id":7,"gender":"female"},
{"user_id":2,"gender":"other"},
{"user_id":5,"gender":"male"},
{"user_id":9,"gender":"female"},
{"user_id":6,"gender":"other"},
{"user_id":8,"gender":"male"}
]Each gender group is sorted by user_id first: female=[3,7,9], other=[1,2,6], male=[4,5,8]. Then rows are interleaved as female, other, male at each index.
Genders:
| user_id | gender |
|---------|--------|
| 40 | female |
| 11 | male |
| 30 | other |
| 5 | female |
| 99 | male |
| 20 | other |[
{"user_id":5,"gender":"female"},
{"user_id":20,"gender":"other"},
{"user_id":11,"gender":"male"},
{"user_id":40,"gender":"female"},
{"user_id":30,"gender":"other"},
{"user_id":99,"gender":"male"}
]Even when input rows are mixed, each bucket is independently sorted, then interleaved by cycle order.
Genders:
[][]An empty input produces an empty output.
Constraints