제출 #157097

#제출 시각아이디문제언어결과실행 시간메모리
157097InfiniteJest게임 (IOI14_game)C++14
컴파일 에러
0 ms0 KiB
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
#include <algorithm>
#include <math.h>
#define pb push_back
#define mp make_pair
#define fi first
#define se second
using namespace std;

ifstream in("input.txt");
ofstream out("output.txt");

typedef long long ll;

int k[1600];
int s[1600];
int p[1600][1600];

int find(int x){
  while(x!=k[x])x=k[x];
  return k[x];
}

bool same(int a, int b){
  return find(a)==find(b);
}

void unite(int a, int b){
  a=find(a);
  b=find(b);
  if(s[a]<s[b])swap(a,b);
  k[b]=a;
  s[a]+=s[b];
  for(int i=0;i<n;i++)p[a][i]+=p[b][i];
}

void initialize(int n){
  for(int i=0;i<n;i++){
    k[i]=i;
    s[i]=1;
  }
}
int hasEdge(int u, int v){
  u=find(u);
  v=find(v);
  if(u==v)return 1;
  if(p[u][v]+p[v][u]==s[u]*s[v]-1){
    unite(u,v);
    return 1;
  }
  return 0;
}

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

game.cpp: In function 'void unite(int, int)':
game.cpp:37:17: error: 'n' was not declared in this scope
   for(int i=0;i<n;i++)p[a][i]+=p[b][i];
                 ^