Submission #206612

# Submission time Handle Problem Language Result Execution time Memory
206612 2020-03-04T08:39:05 Z autumn_eel Two Transportations (JOI19_transportations) C++14
52 / 100
1760 ms 75272 KB
#include "Azer.h"
#include <bits/stdc++.h>
#define rep(i,n)for(int i=0;i<(n);i++)
using namespace std;
typedef pair<int,int>P;

const int INF=0x3f3f3f3f;

namespace {

int N;
vector<P>E[3000];
bool used[3000];
int d[3000];
int Min,id;

void Send(int n,int x){
	for(int i=n-1;i>=0;i--){
		SendA(x>>i&1);
	}
}
struct Receiver{
	int n,cur,x;
	bool flag;
	void Init(int N){
		n=N;
		cur=n-1;
		x=0;
		flag=true;
	}
	bool Read(int b){
		x|=(b<<cur);
		if(cur==0){
			flag=false;
			return true;
		}
		cur--;
		return false;
	}
}Rcost,Rid;

void Update(int v,int cost){
	used[v]=true;
	d[v]=cost;
	for(auto p:E[v]){
		d[p.second]=min(d[p.second],cost+p.first);
	}
	Min=INF;id=-1;
	rep(i,N){
		if(!used[i]&&Min>d[i]){
			Min=d[i];
			id=i;
		}
	}
	if(Min!=INF){
		Send(20,Min);
		Rcost.Init(20);
	}
}
}

void InitA(int N,int A,vector<int>U,vector<int>V,vector<int>C){
	::N=N;
	rep(i,A){
		E[U[i]].push_back(P(C[i],V[i]));
		E[V[i]].push_back(P(C[i],U[i]));
	}
	rep(i,N)d[i]=(1<<20)-1;
	Update(0,0);
	Rcost.Init(20);
}

void ReceiveA(bool x){
	if(Rcost.flag){
		if(!Rcost.Read(x))return;
		if(Rcost.x<Min){
			Rid.Init(11);
		}
		else{
			Send(11,id);
			Update(id,Min);
		}
	}
	else if(Rid.flag){
		if(!Rid.Read(x))return;
		Update(Rid.x,Rcost.x);
	}
}

vector<int>Answer(){
	vector<int>ans(N);
	rep(i,N){
		ans[i]=d[i];
	}
	return ans;
}
#include "Baijan.h"
#include <bits/stdc++.h>
#define rep(i,n)for(int i=0;i<(n);i++)
using namespace std;
typedef pair<int,int>P;

const int INF=0x3f3f3f3f;

namespace {

int N;
vector<P>E[3000];
bool used[3000];
int d[3000];
int Min,id;

void Send(int n,int x){
	for(int i=n-1;i>=0;i--){
		SendB(x>>i&1);
	}
}
struct Receiver{
	int n,cur,x;
	bool flag;
	void Init(int N){
		n=N;
		cur=n-1;
		x=0;
		flag=true;
	}
	bool Read(int b){
		x|=(b<<cur);
		if(cur==0){
			flag=false;
			return true;
		}
		cur--;
		return false;
	}
}Rcost,Rid;

void Update(int v,int cost){
	used[v]=true;
	d[v]=cost;
	for(auto p:E[v]){
		d[p.second]=min(d[p.second],cost+p.first);
	}
	Min=INF;id=-1;
	rep(i,N){
		if(!used[i]&&Min>d[i]){
			Min=d[i];
			id=i;
		}
	}
	if(Min!=INF){
		Send(20,Min);
		Rcost.Init(20);
	}
}
}

void InitB(int N,int B,vector<int>S,vector<int>T,vector<int> D) {
	::N=N;
	rep(i,B){
		E[S[i]].push_back(P(D[i],T[i]));
		E[T[i]].push_back(P(D[i],S[i]));
	}
	rep(i,N)d[i]=(1<<20)-1;
	Update(0,0);
	Rcost.Init(20);
}

void ReceiveB(bool x){
	if(Rcost.flag){
		if(!Rcost.Read(x))return;
		if(Rcost.x<=Min){
			Rid.Init(11);
		}
		else{
			Send(11,id);
			Update(id,Min);
		}
	}
	else if(Rid.flag){
		if(!Rid.Read(x))return;
		Update(Rid.x,Rcost.x);
	}
}
# Verdict Execution time Memory Grader output
1 Incorrect 521 ms 1008 KB Wrong Answer [2]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 16 ms 1768 KB Output is correct
2 Incorrect 522 ms 880 KB Wrong Answer [2]
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 525 ms 752 KB Wrong Answer [2]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 664 ms 1864 KB Output is correct
2 Correct 756 ms 1760 KB Output is correct
3 Correct 1002 ms 23808 KB Output is correct
4 Correct 770 ms 1504 KB Output is correct
5 Correct 936 ms 17720 KB Output is correct
6 Correct 818 ms 1760 KB Output is correct
7 Correct 788 ms 1504 KB Output is correct
8 Correct 740 ms 1760 KB Output is correct
9 Correct 1120 ms 36320 KB Output is correct
10 Correct 1110 ms 36064 KB Output is correct
11 Correct 1466 ms 61176 KB Output is correct
12 Correct 1260 ms 53912 KB Output is correct
13 Correct 780 ms 1768 KB Output is correct
14 Correct 18 ms 1512 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 664 ms 1864 KB Output is correct
2 Correct 756 ms 1760 KB Output is correct
3 Correct 1002 ms 23808 KB Output is correct
4 Correct 770 ms 1504 KB Output is correct
5 Correct 936 ms 17720 KB Output is correct
6 Correct 818 ms 1760 KB Output is correct
7 Correct 788 ms 1504 KB Output is correct
8 Correct 740 ms 1760 KB Output is correct
9 Correct 1120 ms 36320 KB Output is correct
10 Correct 1110 ms 36064 KB Output is correct
11 Correct 1466 ms 61176 KB Output is correct
12 Correct 1260 ms 53912 KB Output is correct
13 Correct 780 ms 1768 KB Output is correct
14 Correct 18 ms 1512 KB Output is correct
15 Correct 826 ms 1504 KB Output is correct
16 Correct 932 ms 1760 KB Output is correct
17 Correct 930 ms 2016 KB Output is correct
18 Correct 1221 ms 17712 KB Output is correct
19 Correct 944 ms 1504 KB Output is correct
20 Correct 1150 ms 18512 KB Output is correct
21 Correct 739 ms 1760 KB Output is correct
22 Correct 970 ms 1760 KB Output is correct
23 Correct 1362 ms 44256 KB Output is correct
24 Correct 1340 ms 44256 KB Output is correct
25 Correct 1760 ms 75272 KB Output is correct
26 Correct 1578 ms 64704 KB Output is correct
27 Correct 1006 ms 1760 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 664 ms 1864 KB Output is correct
2 Correct 756 ms 1760 KB Output is correct
3 Correct 1002 ms 23808 KB Output is correct
4 Correct 770 ms 1504 KB Output is correct
5 Correct 936 ms 17720 KB Output is correct
6 Correct 818 ms 1760 KB Output is correct
7 Correct 788 ms 1504 KB Output is correct
8 Correct 740 ms 1760 KB Output is correct
9 Correct 1120 ms 36320 KB Output is correct
10 Correct 1110 ms 36064 KB Output is correct
11 Correct 1466 ms 61176 KB Output is correct
12 Correct 1260 ms 53912 KB Output is correct
13 Correct 780 ms 1768 KB Output is correct
14 Correct 18 ms 1512 KB Output is correct
15 Correct 826 ms 1504 KB Output is correct
16 Correct 932 ms 1760 KB Output is correct
17 Correct 930 ms 2016 KB Output is correct
18 Correct 1221 ms 17712 KB Output is correct
19 Correct 944 ms 1504 KB Output is correct
20 Correct 1150 ms 18512 KB Output is correct
21 Correct 739 ms 1760 KB Output is correct
22 Correct 970 ms 1760 KB Output is correct
23 Correct 1362 ms 44256 KB Output is correct
24 Correct 1340 ms 44256 KB Output is correct
25 Correct 1760 ms 75272 KB Output is correct
26 Correct 1578 ms 64704 KB Output is correct
27 Correct 1006 ms 1760 KB Output is correct
28 Incorrect 513 ms 752 KB Wrong Answer [2]
29 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 521 ms 1008 KB Wrong Answer [2]
2 Halted 0 ms 0 KB -