제출 #1364831

#제출 시각아이디문제언어결과실행 시간메모리
1364831semiautoArranging Shoes (IOI19_shoes)C++20
컴파일 에러
0 ms0 KiB
#include "shoes.h"
#include <bits/stdc++.h>
using namespace std;

int bit[200067];

int f_sum(int r) {
        int ret = 0;
        for (; r >= 0; r = (r & (r + 1)) - 1)
            ret += bit[r];
        return ret;
}

void f_upd(int idx, int delta) {
        for (; idx < 200067; idx = idx | (idx + 1))
            bit[idx] += delta;
    }

long long count_swaps(std::vector<int> s) {
	int n = (int)(s.size()) / 2;
	queue <int> v[2 * n + 1];
	for (int i = 0; i < 2 * n; i++) {
		q[s[i] + n].push(i);
	}
	vector <bool> fixed(2 * n);
	long long answer = 0;
	for (int i = 0; i < 2 * n; i++) {
		if (fixed[i]) {
			continue;
		}
		int p = q[-s[i] + n].front();
		q[-s[i] + n].pop();
		q[s[i] + n].pop();
		fixed[p] = 1;
		answer += p - i - 1;
		if (s[i] > 0) {
			answer++;
		}
		answer += f_sum(p);
		f_upd(0, 1);
		f_upd(p + 1, -1);
	}
	return answer;
}

컴파일 시 표준 에러 (stderr) 메시지

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:23:17: error: 'q' was not declared in this scope
   23 |                 q[s[i] + n].push(i);
      |                 ^
shoes.cpp:31:25: error: 'q' was not declared in this scope
   31 |                 int p = q[-s[i] + n].front();
      |                         ^