Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int main() {
- int n, k, q;
- scanf("%d %d %d", &n, &k, &q);
- static int arr[1+5000000];
- for (int i = 1; i <= n; ++i) {
- arr[i] = i;
- }
- static int answ[1+5000000];
- int count = 0;
- while (n >= k) {
- int pos = k, saved = count;
- for (int i = k; i <= n; ++i) {
- if (i % k == 0) {
- answ[arr[i]] = ++count;
- } else {
- arr[pos++] = arr[i];
- }
- }
- n -= (count-saved);
- }
- while (q--) {
- int item;
- scanf("%d", &item);
- printf("%d\n", answ[item]);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment