Submission #418326

# Submission time Handle Problem Language Result Execution time Memory
418326 2021-06-05T09:54:50 Z vanic Scales (IOI15_scales) C++14
55.5556 / 100
1 ms 252 KB
#include "scales.h"
#include <algorithm>
#include <cmath>
#include <vector>
#include <iostream>

using namespace std;

void init(int T){
}

int sol[6];

void cetvorka(vector < int > l){
	int a=getLightest(l[0], l[1], l[2]);
	int b;
	if(a==l[0]){
		b=l[1];
	}
	else{
		b=l[0];
	}
	a=getLightest(a, b, l[3]);
	sol[2]=a;
	l.erase(find(l.begin(), l.end(), a));
	int e=getLightest(l[0], l[1], l[2]);
	sol[3]=e;
	int f=getMedian(l[0], l[1], l[2]);
	sol[4]=f;
	l.erase(find(l.begin(), l.end(), e));
	l.erase(find(l.begin(), l.end(), f));
	sol[5]=l[0];

}


void orderCoins(){
	int a=getLightest(1, 2, 3);
	int b=getLightest(4, 5, 6);
	int c;
	if(a==1){
		c=2;
	}
	else{
		c=1;
	}
	int d=getLightest(a, b, c);
	sol[0]=d;
	vector < int > svi={1, 2, 3, 4, 5, 6};
	svi.erase(svi.begin()+b-1);
	svi.erase(svi.begin()+a-1);
	if(d==a){
		d=getLightest(b, svi[0], svi[1]);
		sol[1]=d;
		if(d==b){
			cetvorka(svi);
		}
		else{
			svi.erase(find(svi.begin(), svi.end(), d));
			d=getLightest(svi[0], svi[1], b);
			sol[2]=d;
			if(d!=b){
				svi.erase(find(svi.begin(), svi.end(), d));
				svi.push_back(b);
			}
			int e=getLightest(svi[0], svi[1], svi[2]);
			sol[3]=e;
			int f=getMedian(svi[0], svi[1], svi[2]);
			sol[4]=f;
			svi.erase(find(svi.begin(), svi.end(), e));
			svi.erase(find(svi.begin(), svi.end(), f));
			sol[5]=svi[0];
		}
	}
	else{
		d=getLightest(a, svi[2], svi[3]);
		sol[1]=d;
		if(d==a){
			cetvorka(svi);
		}
		else{
			svi.erase(find(svi.begin(), svi.end(), d));
			d=getLightest(svi[1], svi[2], a);
			sol[2]=d;
			if(d!=a){
				svi.erase(find(svi.begin(), svi.end(), d));
				svi.push_back(a);
			}
			int e=getLightest(svi[0], svi[1], svi[2]);
			sol[3]=e;
			int f=getMedian(svi[0], svi[1], svi[2]);
			sol[4]=f;
			svi.erase(find(svi.begin(), svi.end(), e));
			svi.erase(find(svi.begin(), svi.end(), f));
			sol[5]=svi[0];
		}
	}
    answer(sol);
}

Compilation message

scales.cpp: In function 'void init(int)':
scales.cpp:9:15: warning: unused parameter 'T' [-Wunused-parameter]
    9 | void init(int T){
      |           ~~~~^
# Verdict Execution time Memory Grader output
1 Partially correct 0 ms 204 KB Output is partially correct
2 Partially correct 1 ms 204 KB Output is partially correct
3 Partially correct 0 ms 204 KB Output is partially correct
4 Partially correct 0 ms 204 KB Output is partially correct
5 Partially correct 0 ms 204 KB Output is partially correct
6 Partially correct 0 ms 204 KB Output is partially correct
7 Partially correct 0 ms 204 KB Output is partially correct
8 Partially correct 1 ms 204 KB Output is partially correct
9 Partially correct 1 ms 252 KB Output is partially correct
10 Partially correct 0 ms 204 KB Output is partially correct
11 Partially correct 1 ms 204 KB Output is partially correct
12 Partially correct 1 ms 204 KB Output is partially correct
13 Partially correct 1 ms 204 KB Output is partially correct
14 Partially correct 0 ms 204 KB Output is partially correct
15 Partially correct 0 ms 204 KB Output is partially correct
16 Partially correct 0 ms 204 KB Output is partially correct
17 Partially correct 0 ms 204 KB Output is partially correct
18 Partially correct 1 ms 204 KB Output is partially correct
19 Partially correct 1 ms 204 KB Output is partially correct
20 Partially correct 0 ms 204 KB Output is partially correct
21 Partially correct 1 ms 204 KB Output is partially correct
22 Partially correct 0 ms 204 KB Output is partially correct
23 Partially correct 0 ms 204 KB Output is partially correct
24 Partially correct 0 ms 204 KB Output is partially correct
25 Partially correct 0 ms 204 KB Output is partially correct
26 Partially correct 0 ms 204 KB Output is partially correct
27 Partially correct 0 ms 204 KB Output is partially correct
28 Partially correct 0 ms 204 KB Output is partially correct
29 Partially correct 0 ms 204 KB Output is partially correct
30 Partially correct 0 ms 204 KB Output is partially correct
31 Partially correct 1 ms 204 KB Output is partially correct
32 Partially correct 0 ms 204 KB Output is partially correct
33 Partially correct 0 ms 204 KB Output is partially correct
34 Partially correct 0 ms 204 KB Output is partially correct
35 Partially correct 0 ms 204 KB Output is partially correct
36 Partially correct 0 ms 204 KB Output is partially correct
37 Partially correct 0 ms 204 KB Output is partially correct
38 Partially correct 0 ms 204 KB Output is partially correct
39 Partially correct 0 ms 204 KB Output is partially correct
40 Partially correct 0 ms 204 KB Output is partially correct