Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #include <climits>
- #include <cstring>
- void print(const int *array, int size)
- {
- for (int i = 0; i < size - 1; ++i)
- printf("%d ", array[i]);
- printf("%d\n", array[size - 1]);
- }
- int main()
- {
- int k;
- scanf("%d", &k);
- k--;
- int *elements = new int[k];
- int *p = new int[k];
- //memset(elements, 0, sizeof(*elements) * k);
- for (int i = 0; i < k; ++i) {
- elements[i] = 1;
- }
- memset(p, 0, sizeof(*p) * k);
- /*
- for (int i = 0; i < k; ++i) {
- printf("%d %d\n", elements[i], p[i]);
- }
- */
- int num = 0;
- while (scanf("%d", &num) != EOF && num != -1) {
- if (num) {
- bool updated = false;
- for (int i = 0; i < k; ++i) {
- if (p[i] == 0 || elements[i] == num) {
- ++p[i];
- elements[i] = num;
- updated = true;
- break;
- }
- }
- if (!updated) {
- for (int i = 0; i < k; ++i)
- --p[i];
- }
- } else {
- print(elements, k);
- }
- }
- delete[] elements;
- delete[] p;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement