Submission #133548

# Submission time Handle Problem Language Result Execution time Memory
133548 2019-07-21T04:40:20 Z mohammedehab2002 Two Transportations (JOI19_transportations) C++14
62 / 100
2020 ms 85296 KB
#include "Azer.h"
#include <bits/stdc++.h>
using namespace std;
int cura,nodea;
vector<int> dista,da;
vector<pair<int,int> > va[2005];
set<pair<int,int> > sa;
void upda(int node)
{
	sa.erase({dista[node],node});
	dista[node]=cura;
	for (auto p:va[node])
	{
		if (cura+p.second<dista[p.first])
		{
			sa.erase({dista[p.first],p.first});
			dista[p.first]=cura+p.second;
			sa.insert({dista[p.first],p.first});
		}
	}
	if (sa.empty())
	return;
	nodea=sa.begin()->second;
	for (int i=0;i<11;i++)
	SendA(nodea&(1<<i));
	for (int i=0;i<9;i++)
	SendA(min(dista[nodea]-cura,511)&(1<<i));
}
void InitA(int n,int a,vector<int> u,vector<int> v,vector<int> c)
{
	for (int i=0;i<a;i++)
	{
		va[u[i]].push_back({v[i],c[i]});
		va[v[i]].push_back({u[i],c[i]});
	}
	for (int i=0;i<n;i++)
	{
		dista.push_back(1e9);
		sa.insert({dista[i],i});
	}
	upda(0);
}
void ReceiveA(bool x)
{
	da.push_back(x);
	if (da.size()==20)
	{
		int node=0,add=0;
		for (int i=0;i<11;i++)
		node|=(da[i]<<i);
		for (int i=0;i<9;i++)
		add|=(da[i+11]<<i);
		if (dista[nodea]<cura+add)
		{
			cura=dista[nodea];
			upda(nodea);
		}
		else
		{
			cura+=add;
			upda(node);
		}
		da.clear();
	}
}
vector<int> Answer()
{
	return dista;
}
#include "Baijan.h"
#include <bits/stdc++.h>
using namespace std;
int curb,nodeb;
vector<int> distb,db;
vector<pair<int,int> > vb[2005];
set<pair<int,int> > sb;
void updb(int node)
{
	sb.erase({distb[node],node});
	distb[node]=curb;
	for (auto p:vb[node])
	{
		if (curb+p.second<distb[p.first])
		{
			sb.erase({distb[p.first],p.first});
			distb[p.first]=curb+p.second;
			sb.insert({distb[p.first],p.first});
		}
	}
	if (sb.empty())
	return;
	nodeb=sb.begin()->second;
	for (int i=0;i<11;i++)
	SendB(nodeb&(1<<i));
	for (int i=0;i<9;i++)
	SendB(min(distb[nodeb]-curb,511)&(1<<i));
}
void InitB(int n,int b,vector<int> u,vector<int> v,vector<int> c)
{
	for (int i=0;i<b;i++)
	{
		vb[u[i]].push_back({v[i],c[i]});
		vb[v[i]].push_back({u[i],c[i]});
	}
	for (int i=0;i<n;i++)
	{
		distb.push_back(1e9);
		sb.insert({distb[i],i});
	}
	updb(0);
}
void ReceiveB(bool x)
{
	db.push_back(x);
	if (db.size()==20)
	{
		int node=0,add=0;
		for (int i=0;i<11;i++)
		node|=(db[i]<<i);
		for (int i=0;i<9;i++)
		add|=(db[i+11]<<i);
		if (distb[nodeb]<=curb+add)
		{
			curb=distb[nodeb];
			updb(nodeb);
		}
		else
		{
			curb+=add;
			updb(node);
		}
		db.clear();
	}
}
# Verdict Execution time Memory Grader output
1 Incorrect 599 ms 928 KB Wrong Answer [2]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 8 ms 992 KB Output is correct
2 Incorrect 581 ms 928 KB Wrong Answer [2]
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 512 ms 936 KB Wrong Answer [2]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 740 ms 1600 KB Output is correct
2 Correct 830 ms 1448 KB Output is correct
3 Correct 899 ms 23680 KB Output is correct
4 Correct 587 ms 1568 KB Output is correct
5 Correct 706 ms 17168 KB Output is correct
6 Correct 564 ms 1600 KB Output is correct
7 Correct 620 ms 1656 KB Output is correct
8 Correct 718 ms 1760 KB Output is correct
9 Correct 960 ms 36328 KB Output is correct
10 Correct 848 ms 35952 KB Output is correct
11 Correct 1229 ms 61352 KB Output is correct
12 Correct 1082 ms 53744 KB Output is correct
13 Correct 590 ms 1472 KB Output is correct
14 Correct 6 ms 992 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 740 ms 1600 KB Output is correct
2 Correct 830 ms 1448 KB Output is correct
3 Correct 899 ms 23680 KB Output is correct
4 Correct 587 ms 1568 KB Output is correct
5 Correct 706 ms 17168 KB Output is correct
6 Correct 564 ms 1600 KB Output is correct
7 Correct 620 ms 1656 KB Output is correct
8 Correct 718 ms 1760 KB Output is correct
9 Correct 960 ms 36328 KB Output is correct
10 Correct 848 ms 35952 KB Output is correct
11 Correct 1229 ms 61352 KB Output is correct
12 Correct 1082 ms 53744 KB Output is correct
13 Correct 590 ms 1472 KB Output is correct
14 Correct 6 ms 992 KB Output is correct
15 Correct 810 ms 1504 KB Output is correct
16 Correct 670 ms 1600 KB Output is correct
17 Correct 912 ms 1760 KB Output is correct
18 Correct 1098 ms 17584 KB Output is correct
19 Correct 1048 ms 1360 KB Output is correct
20 Correct 1114 ms 17984 KB Output is correct
21 Correct 784 ms 1712 KB Output is correct
22 Correct 914 ms 1848 KB Output is correct
23 Correct 1354 ms 44144 KB Output is correct
24 Correct 1080 ms 43800 KB Output is correct
25 Correct 1488 ms 75256 KB Output is correct
26 Correct 1200 ms 64208 KB Output is correct
27 Correct 856 ms 1856 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 740 ms 1600 KB Output is correct
2 Correct 830 ms 1448 KB Output is correct
3 Correct 899 ms 23680 KB Output is correct
4 Correct 587 ms 1568 KB Output is correct
5 Correct 706 ms 17168 KB Output is correct
6 Correct 564 ms 1600 KB Output is correct
7 Correct 620 ms 1656 KB Output is correct
8 Correct 718 ms 1760 KB Output is correct
9 Correct 960 ms 36328 KB Output is correct
10 Correct 848 ms 35952 KB Output is correct
11 Correct 1229 ms 61352 KB Output is correct
12 Correct 1082 ms 53744 KB Output is correct
13 Correct 590 ms 1472 KB Output is correct
14 Correct 6 ms 992 KB Output is correct
15 Correct 810 ms 1504 KB Output is correct
16 Correct 670 ms 1600 KB Output is correct
17 Correct 912 ms 1760 KB Output is correct
18 Correct 1098 ms 17584 KB Output is correct
19 Correct 1048 ms 1360 KB Output is correct
20 Correct 1114 ms 17984 KB Output is correct
21 Correct 784 ms 1712 KB Output is correct
22 Correct 914 ms 1848 KB Output is correct
23 Correct 1354 ms 44144 KB Output is correct
24 Correct 1080 ms 43800 KB Output is correct
25 Correct 1488 ms 75256 KB Output is correct
26 Correct 1200 ms 64208 KB Output is correct
27 Correct 856 ms 1856 KB Output is correct
28 Correct 833 ms 1760 KB Output is correct
29 Correct 1090 ms 1792 KB Output is correct
30 Correct 1630 ms 41872 KB Output is correct
31 Correct 936 ms 1896 KB Output is correct
32 Correct 1494 ms 37408 KB Output is correct
33 Correct 980 ms 1936 KB Output is correct
34 Correct 1538 ms 1872 KB Output is correct
35 Correct 932 ms 2016 KB Output is correct
36 Correct 1750 ms 49208 KB Output is correct
37 Correct 1470 ms 49472 KB Output is correct
38 Correct 2020 ms 85296 KB Output is correct
39 Correct 1882 ms 78424 KB Output is correct
40 Correct 1014 ms 2016 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 599 ms 928 KB Wrong Answer [2]
2 Halted 0 ms 0 KB -