Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void josephus ( int n, int m)
- {
- int i, j, kill = m - 1;
- int reset = 0;
- int circle[n], killOrder[n];
- for (i = 0; i < n; i++)
- circle[i] = i;
- for ( i = 0; i < n; i++)
- {
- killOrder[i] = kill;
- circle[kill] = -1;
- for ( j = 0; j < m; j++)
- {
- kill++;
- while (circle[kill] == -1)
- kill++;
- if (kill > n - 1)
- {
- kill = 0;
- }
- while (circle[kill] == -1)
- kill++;
- }
- }
- for (i = 0; i < n; i++)
- printf("%d\t%d \n", i, killOrder[i]);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement