제출 #1319682

#제출 시각아이디문제언어결과실행 시간메모리
1319682dibamboo23식물 비교 (IOI20_plants)C++20
컴파일 에러
0 ms0 KiB
#include "plants.h"
#include <bits/stdc++.h>

#define ll long long
#define sz size()
#define F first 
#define S second 

using namespace std;

const int N=1e6+3;

int n;
int r[N];
int p[N];
int s[N];

void init(int k, vector<int>inr) {
	n=(int)r.sz;
	for(int i=0;i<n;i++)r[i]=r[i+n]=inr[i];
	int cnt=0;
	for(int i=0;i<n*2;i++){
		if(r[i]==1)cnt=0;
		cnt++;
		p[i]=cnt;
	}
	cnt=0;
	for(int i=n*2-1;i>=0;i--){
		if(r[i]==0)cnt=0;
		cnt++;
		s[i]=cnt;
	}
	return;
}

// 0 -  > 
// 1 -  <

int compare_plants(int x, int y) {
	bool t=0;
	if(x>y)t=1,swap(x,y);
	int res=-1;
	if(x+s[x]>=y)res=1;
	else if(y-p[y]<=x)res=0;
	if(res!=-1&&t)res^=1;
	return res;
}

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

plants.cpp: In function 'void init(int, std::vector<int>)':
plants.cpp:5:12: error: request for member 'size' in 'r', which is of non-class type 'int [1000003]'
    5 | #define sz size()
      |            ^~~~
plants.cpp:19:18: note: in expansion of macro 'sz'
   19 |         n=(int)r.sz;
      |                  ^~