QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#274117#67. Two TransportationsDaiRuiChen007Compile Error//C++202.1kb2023-12-03 10:53:122023-12-03 10:53:13

Judging History

你现在查看的是最新测评结果

  • [2023-12-03 10:53:13]
  • 评测
  • [2023-12-03 10:53:12]
  • 提交

Azer

#include<bits/stdc++.h>
#include "Azer.h"
using namespace std;
const int MAXN=2005,inf=1e9;
int n,m,ver,dA,dB,lstdis,vA,vB,typ,rdcnt;
//typ=0:read dis,typ=1:read ver
vector <int> dis,vis;
struct Edge { int v,w; };
vector <vector<Edge>> G;
void upd(int u) {
	vis[u]=true,lstdis=dis[p];
	for(auto e:G[u]) dis[e.v]=min(dis[e.v],dis[u]+e.w);
	int p=-1;
	for(int i=0;i<n;++i) if(!vis[i]&&(p==-1||dis[i]<dis[p])) p=i;
	if(p==-1) return ;
	dA=dis[p]-lstdis,typ=0,rdcnt=9,vA=p;
	for(int k=8;~k;--k) SendA((dA>>k)&1);
}
void InitA(int N,int A,vector<int> U,vector<int> V,vector<int> C) {
	n=N,m=A,dis.resize(n,inf),vis.resize(n),G.resize(n);
	for(int i=0;i<m;++i) {
		G[U[i]].push_back({V[i],C[i]});
		G[V[i]].push_back({U[i],C[i]});
	}
	dis[0]=0,upd(0);
}
void ReceiveA(bool x) {
	if(typ) vB=vB*2+x;
	else dB=dB*2+x;
	if(!--rdcnt) {
		if(typ) dis[vB]=lstdis+dB,upd(vB);
		else {
			if(dA<=dB) {
				for(int k=10;~k;--k) SendA((vA>>k)&1);
				dis[vA]=lstdis+dA,upd(vA);
			} else typ=1,rdcnt=11;
		}
	}
}
vector<int> Answer() { return dis; }

Baijan

#include<bits/stdc++.h>
#include "Baijan.h"
using namespace std;
const int MAXN=2005,inf=1e9;
int n,m,ver,dA,dB,lstdis,vA,vB,typ,rdcnt;
//typ=0:read dis,typ=1:read ver
vector <int> dis,vis;
struct Edge { int v,w; };
vector <vector<Edge>> G;
void upd(int u) {
	vis[u]=true,lstdis=dis[u];
	for(auto e:G[u]) dis[e.v]=min(dis[e.v],dis[u]+e.w);
	int p=-1;
	for(int i=0;i<n;++i) if(!vis[i]&&(p==-1||dis[i]<dis[p])) p=i;
	if(p==-1) return ;
	dB=dis[p]-lstdis,typ=0,rdcnt=9,vB=p;
	for(int k=8;~k;--k) SendB((dB>>k)&1);
}
void InitB(int N,int B,vector<int> U,vector<int> V,vector<int> C) {
	n=N,m=B,dis.resize(n,inf),vis.resize(n),G.resize(n);
	for(int i=0;i<m;++i) {
		G[U[i]].push_back({V[i],C[i]});
		G[V[i]].push_back({U[i],C[i]});
	}
	dis[0]=0,upd(0);
}
void ReceiveB(bool x) {
	if(typ) vA=vA*2+x;
	else dA=dA*2+x;
	if(!--rdcnt) {
		if(typ) dis[vA]=lstdis+dA,upd(vA);
		else {
			if(dB<dA) {
				for(int k=10;~k;--k) SendB((vB>>k)&1);
				dis[vB]=lstdis+dB,upd(vB);
			} else typ=1,rdcnt=11;
		}
	}
}

详细

Azer.code: In function ‘void upd(int)’:
Azer.code:11:25: error: ‘p’ was not declared in this scope
   11 |  vis[u]=true,lstdis=dis[p];
      |                         ^
grader_Azer.cpp: In function ‘int main(int, char**)’:
grader_Azer.cpp:37:13: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
   37 |   char *t = "/dev/null";
      |             ^~~~~~~~~~~