Submission #133202

#TimeUsernameProblemLanguageResultExecution timeMemory
133202Mahdi_JfriScales (IOI15_scales)C++14
0 / 100
3 ms552 KiB
#include "scales.h"
#include<bits/stdc++.h>

using namespace std;

#define ll long long
#define pb push_back

#define gh getHeaviest
#define gl getLightest
#define gm getMedian
#define gnl getNextLightest

const int maxn = 1e5 + 20;

void init(int T)
{

}

void orderCoins()
{
	int res[] = {85 , 1, 2, 3, 4, 5, 6};
	srand(time(NULL));
	random_shuffle(res + 1 , res + 7);

	{
		int x = gl(1 , 2 , 3) , y;
		swap(res[1] , res[x]);

		x = gl(4 , 5 , 6) , y = gm(4 , 5 , 6);
		res[4] = x , res[5] = y , res[6] = (4 + 5 + 6) - x - y;
	}

	int w[6];

	if(gl(res[1] , res[2] , res[4]) == res[4])
	{
		swap(res[1] , res[4]);
		swap(res[2] , res[5]);
		swap(res[3] , res[6]);
	}

	int tx = gnl(res[1] , res[4] , res[5] , res[2]);

	if(tx == res[1])
	{
		w[0] = res[1] , w[1] = res[4] , w[2] = res[5];
		w[3] = gl(res[2] , res[3] , res[6]);
		w[4] = gm(res[2] , res[3] , res[6]);
		w[5] = res[2] + res[3] + res[6] - w[3] - w[4];
	}
	else if(tx == res[4])
	{
		tx = gnl(res[1] , res[4] , res[5] , res[3]);
		if(tx == res[1])
		{
			w[0] = res[1] , w[1] = res[2] , w[2] = res[4] , w[3] = res[5];
			w[4] = gm(res[1] , res[3] , res[6]);
			w[5] = res[3] + res[6] - w[4];
		}
		else if(tx == res[4])
		{
			tx = gm(res[1] , res[2] , res[3]);
			if(tx == res[3])
				swap(res[2] , res[3]);

			w[0] = res[1] , w[1] = res[2] , w[2] = res[3] , w[3] = res[4] , w[4] = res[5] , w[5] = res[6];
		}
		else
		{
			w[0] = res[1] , w[1] = res[2] , w[2] = res[4] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
		}
	}
	else
	{
		tx = gm(res[1] , res[2] , res[3]);
		if(tx == res[2])
		{
			tx = gnl(res[2] , res[5] , res[6] , res[3]);
			if(tx == res[2])
				w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[5] , w[4] = res[6] , w[5] = res[3];
			else if(tx == res[5])
				w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
			else
				w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[5] , w[4] = res[3] , w[5] = res[6];
		}
		else
		{
			tx = gl(res[4] , res[2] , res[3]);
			if(tx == res[4])
				w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
			else
				w[0] = res[1] , w[1] = res[2] , w[2] = res[4] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
		}
	}










	answer(w);
}

Compilation message (stderr)

scales.cpp: In function 'void init(int)':
scales.cpp:16:15: warning: unused parameter 'T' [-Wunused-parameter]
 void init(int T)
               ^
scales.cpp: In function 'void orderCoins()':
scales.cpp:24:12: warning: conversion to 'unsigned int' from 'time_t {aka long int}' may alter its value [-Wconversion]
  srand(time(NULL));
        ~~~~^~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...