#include <stdio.h>#include <stdlib.h>typedef struct node { int x; struct node *prev, *next;}NODE;int main(void){ int n, m, i, j, index[2001], ans[2001]; NODE *pointer, cir[2001]; while(scanf("%d%d", &n, &m) != EOF) { m ++; for(i = 1; i < n; i++) { cir[i].x = i; cir[i].next = &cir[i+1]; cir[i+1].prev = &cir[i]; } cir[1].prev = &cir[n]; cir[n].next = &cir[1]; cir[n].x = n; pointer = &cir[n]; for(i = 1; i <= n; i++) { int t = m % (n-i+1); int cnt = 0; while(cnt < t) { pointer = pointer->next; cnt++; } index[i] = pointer->x; if(pointer != pointer->prev) { pointer = pointer->prev; pointer->next = pointer->next->next; pointer->next->prev = pointer; } } for(i = 1; i <= n; i++) ans[index[i]] = i; for(i = 1; i < n; i++) printf("%d ", ans[i]); printf("%dn", ans[n]); } return 0;}