#10985. 133 - The Dole Queue 都乐队列
133 - The Dole Queue 都乐队列
题目描述
在一次严肃的尝试中,为了减少失业队伍,新国家绿色劳动犀牛党决定采取以下策略。每天,所有失业申请者将被安排在一个大圈内,面朝内站立。某人被任意选为1号,其余人按逆时针方向编号到N(站在1号的左边)。从1号开始逆时针移动,一名劳动官员数出k个申请者,而另一名官员从N开始顺时针移动,数出m个申请者。被选中的两人将被送去再培训;如果两名官员选中了同一个人,她(他)将被送去成为政治家。然后,每名官员从下一个可用的人开始重新计数,直到没有人剩下。注意,两名受害者(抱歉,受训者)同时离开圈子,因此可能会有一名官员数到已经被另一名官员选中的人。
输入
编写一个程序,依次读取三个数字(N, k 和 m;k, m > 0,0 < N < 20),并确定申请者被送去再培训的顺序。每组三个数字将位于单独的一行,数据结束的标志是三个零(000)。
输出
对于每个三元组,输出一行数字,指定被选中的人的顺序。每个数字应占3个字符的字段。对于成对的数字,先列出逆时针官员选中的人。用逗号分隔连续的对(或单个),但末尾不应有逗号。
注意
示例输出中的符号⊔表示空格。
示例输入
10 4 3
000
示例输出
4 8, 9 5, 3 1, 2 6, 10, 7