제출 #1334078

#제출 시각아이디문제언어결과실행 시간메모리
1334078boclobanchatXoractive (IZhO19_xoractive)C++20
컴파일 에러
0 ms0 KiB
#include<bits/stdc++.h>
#include"interactive.h"
using namespace std;
set<int> st[67],vv;
vector<int> getval(vector<int> vi,int n,int x)
{
	vector<int> via=vi,vib=vi;
	via.push_back(n);
	via=get_pairwise_xor(via),vib=get_pairwise_xor(vib);
	multiset<int> val;
	for(auto v:via) val.insert(v);
	for(auto v:vib) val.erase(val.lower_bound(v));
	val.erase(val.lower_bound(0));
	vector<int> ans;
	for(int i=0;i<vi.size();i++)
	{
		int res=(*val.begin());
		st.erase(st.lower_bound(res));
		st.erase(st.lower_bound(res));
		ans.push_back(res^x);
	}
	return ans;
}
vector<int> guess(int n)
{
	vector<int> ans(n);
	ans[n-1]=ask(n);
	for(int i=0;(1<<i)<n;i++)
	{
		vector<int> idx;
		for(int j=1;j<n;j++) if(j&(1<<i)) idx.push_back(j);
		vector<int> val=getval(idx,n,ans[n-1]);
		for(auto v:val) st[i].insert(v),vv.insert(v);
	}
	for(auto v:vv)
	{
		int mask=0;
		for(int i=0;(1<<i)<n;i++) if(st[i].lower_bound(v)!=st[i].end()) mask|=(1<<i);
		ans[mask-1]=v;
	}
	return ans;
}

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

Xoractive.cpp: In function 'std::vector<int> getval(std::vector<int>, int, int)':
Xoractive.cpp:18:20: error: request for member 'erase' in 'st', which is of non-class type 'std::set<int> [67]'
   18 |                 st.erase(st.lower_bound(res));
      |                    ^~~~~
Xoractive.cpp:18:29: error: request for member 'lower_bound' in 'st', which is of non-class type 'std::set<int> [67]'
   18 |                 st.erase(st.lower_bound(res));
      |                             ^~~~~~~~~~~
Xoractive.cpp:19:20: error: request for member 'erase' in 'st', which is of non-class type 'std::set<int> [67]'
   19 |                 st.erase(st.lower_bound(res));
      |                    ^~~~~
Xoractive.cpp:19:29: error: request for member 'lower_bound' in 'st', which is of non-class type 'std::set<int> [67]'
   19 |                 st.erase(st.lower_bound(res));
      |                             ^~~~~~~~~~~