제출 #848050

#제출 시각아이디문제언어결과실행 시간메모리
848050Lib추월 (IOI23_overtaking)C++17
컴파일 에러
0 ms0 KiB
#include "overtaking.h" #include <bits/stdc++.h> using namespace std; long long rspeed[1003]; long long spos[1003]; long long stime[1003]; long long arrtime[1003][1003]; //thoi gian xe k den ben i pair<long long, int> sarrtime[1003][1003]; vector <pair<long long, int> > previ; long long ok[1003]; long long atime[1003]; void init(int LL, int NN, std::vector<long long> TT, std::vector<int> WW, int XX, int MM, std::vector<int> SS) { long long len=L,spd=X; int n=N+1,m=M+1; long long cmax; for(int i=1;i<=n;i++){ stime[i]=T[i-1]; arrtime[1][i]=stime[i]; sarrtime[1][i]={stime[i],i}; previ.push_back({stime[i],i}); } for(int i=1;i<=n;i++){ rspeed[i]=W[i-1]; } for(int i=1;i<=m;i++){ spos[i]=S[i-1]; } for(int i=2;i<=m;i++){ previ.push_back({0,0}); sort(previ.begin(),previ.end()); arrtime[i][previ[1].second]=arrtime[i-1][previ[1].second]+(spos[i]-spos[i-1])*rspeed[previ[1].second]; cmax=arrtime[i][previ[1].second]; for(int k=2;k<=n;k++){ cmax=max(cmax,previ[k].first+(spos[i]-spos[i-1])*rspeed[previ[k].second]); arrtime[i][previ[k].second]=cmax; sarrtime[i][previ[k].second]={arrtime[i][previ[k].second],previ[k].second}; } previ.clear(); for(int k=1;k<=n;k++){ previ.push_back({arrtime[i][k],k}); } } } long long arrival_time(long long Y){ for(int i=1;i<=N;i++){ if(arrtime[1][i]>Y){ ok[i]=0; }else{ ok[i]=1; } } atime[1]=Y; for(int i=2;i<=M;i++){ atime[i]=atime[i-1]+(spos[i]-spos[i-1])*spd; for(int k=1;k<=N;k++){ if(atime[i-1]<=arrtime[i-1][k]){ ok[k]=0; } if(ok[k]==1){ atime[i]=max(atime[i],arrtime[i][k]); } } } return atime[M]; }

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

overtaking.cpp: In function 'void init(int, int, std::vector<long long int>, std::vector<int>, int, int, std::vector<int>)':
overtaking.cpp:14:19: error: 'L' was not declared in this scope; did you mean 'LL'?
   14 |     long long len=L,spd=X;
      |                   ^
      |                   LL
overtaking.cpp:15:8: error: 'N' was not declared in this scope
   15 |  int n=N+1,m=M+1;
      |        ^
overtaking.cpp:18:12: error: 'T' was not declared in this scope
   18 |   stime[i]=T[i-1];
      |            ^
overtaking.cpp:24:13: error: 'W' was not declared in this scope
   24 |   rspeed[i]=W[i-1];
      |             ^
overtaking.cpp:26:17: error: 'm' was not declared in this scope
   26 |  for(int i=1;i<=m;i++){
      |                 ^
overtaking.cpp:27:11: error: 'S' was not declared in this scope
   27 |   spos[i]=S[i-1];
      |           ^
overtaking.cpp:29:17: error: 'm' was not declared in this scope
   29 |  for(int i=2;i<=m;i++){
      |                 ^
overtaking.cpp:14:15: warning: unused variable 'len' [-Wunused-variable]
   14 |     long long len=L,spd=X;
      |               ^~~
overtaking.cpp: In function 'long long int arrival_time(long long int)':
overtaking.cpp:47:17: error: 'N' was not declared in this scope
   47 |  for(int i=1;i<=N;i++){
      |                 ^
overtaking.cpp:55:17: error: 'M' was not declared in this scope
   55 |  for(int i=2;i<=M;i++){
      |                 ^
overtaking.cpp:56:43: error: 'spd' was not declared in this scope; did you mean 'std'?
   56 |   atime[i]=atime[i-1]+(spos[i]-spos[i-1])*spd;
      |                                           ^~~
      |                                           std
overtaking.cpp:57:18: error: 'N' was not declared in this scope
   57 |   for(int k=1;k<=N;k++){
      |                  ^
overtaking.cpp:66:15: error: 'M' was not declared in this scope
   66 |  return atime[M];
      |               ^