Submission #902211

# Submission time Handle Problem Language Result Execution time Memory
902211 2024-01-10T07:10:39 Z Muhammad_Aneeq Rail (IOI14_rail) C++17
30 / 100
51 ms 628 KB
#include "rail.h"
#include <vector>
#include <algorithm>
using namespace std;
int dist(int i,int j)
{
	return getDistance(i,j);
}
void findLocation(int n, int pos, int location[], int stype[])
{
	int f=1e9+10;
	int ind=-1;
	for (int i=1;i<n;i++)
	{
		int z=(dist(0,i));
		if (z<f)
		{
			f=z;
			ind=i;
		}
	}
	vector<pair<int,int>>sm,bi;
	for (int i=1;i<n;i++)
	{
		if (i==ind)
			continue;
		int z=dist(ind,i);
		if (dist(0,i)==z+f)
			sm.push_back({z,i});
		else
			bi.push_back({z,i});
	}
	sort(begin(sm),end(sm));
	sort(begin(bi),end(bi));
	location[0]=pos;
	stype[0]=1;
	for (int i=0;i<sm.size();i++)
	{
		location[sm[i].second]=pos-sm[i].first+f;
		stype[sm[i].second]=1;		
	}
	for (int i=0;i<bi.size();i++)
	{
		location[bi[i].second]=pos+bi[i].first-f;
		stype[bi[i].second]=2;
	}
	location[ind]=pos+f;
	stype[ind]=2;
}

Compilation message

rail.cpp: In function 'void findLocation(int, int, int*, int*)':
rail.cpp:37:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |  for (int i=0;i<sm.size();i++)
      |               ~^~~~~~~~~~
rail.cpp:42:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   42 |  for (int i=0;i<bi.size();i++)
      |               ~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 360 KB Output is correct
2 Correct 0 ms 360 KB Output is correct
3 Correct 0 ms 360 KB Output is correct
4 Correct 0 ms 360 KB Output is correct
5 Correct 0 ms 360 KB Output is correct
6 Correct 0 ms 360 KB Output is correct
7 Correct 1 ms 360 KB Output is correct
8 Correct 1 ms 360 KB Output is correct
9 Correct 0 ms 360 KB Output is correct
10 Correct 1 ms 360 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 516 KB Output is correct
2 Correct 1 ms 360 KB Output is correct
3 Correct 1 ms 360 KB Output is correct
4 Correct 1 ms 360 KB Output is correct
5 Correct 1 ms 360 KB Output is correct
6 Correct 1 ms 360 KB Output is correct
7 Correct 1 ms 360 KB Output is correct
8 Correct 1 ms 360 KB Output is correct
9 Correct 1 ms 360 KB Output is correct
10 Correct 0 ms 360 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 45 ms 628 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 51 ms 616 KB Output isn't correct
2 Halted 0 ms 0 KB -