Submission #49821

# Submission time Handle Problem Language Result Execution time Memory
49821 2018-06-03T10:46:56 Z zetapi Scales (IOI15_scales) C++14
45.4545 / 100
4 ms 608 KB
#include "scales.h"
#include "bits/stdc++.h"
 
using namespace std;
 
#define mp make_pair
#define pb push_back
 
void init(int T)
{
    /* ... */
 
}
 
void erase(int X,vector<int> &f,vector<int> &s)
{
	for(int A=0;A<f.size();A++)
		if(f[A]==X)
		{
			f.erase(f.begin()+A);
			return ;
		}
	for(int A=0;A<s.size();A++)
		if(s[A]==X)
		{
			s.erase(s.begin()+A);
			return ;
		}

}
 
/*int getMedian(int X,int Y,int Z)
{
	int arr[]={X,Y,Z};
	sort(arr,arr+3);
	return arr[1];
}

int getLightest(int X,int Y,int Z)
{
	int arr[]={X,Y,Z};
	sort(arr,arr+3);
	return arr[0];
}

void answer(int W[])
{

}*/

void orderCoins() 
{
    /* ... */
    int W[] = {1, 2, 3, 4, 5, 6};
    vector<int> f(4),s(4),res;
    f={getLightest(1,2,3),getMedian(1,2,3),6-(f[0]+f[1])};
    s={getLightest(4,5,6),getMedian(4,5,6),15-(s[0]+s[1])};
    f[2]=6-f[0]-f[1];
    s[2]=15-s[0]-s[1];
    while((!f.empty())||(!s.empty()))
    {
    	if(f.empty())
    	{
    		while(!s.empty())
    		{
    			res.pb(*s.begin());
    			s.erase(s.begin());
    		}
    	}
    	else if(s.empty())
    	{
    		while(!f.empty())
    		{
    			res.pb(*f.begin());
    			f.erase(f.begin());
    		}
    	}
    	else if(f.size()==1 && s.size()==1)
    	{
    		res.pb(getMedian(res[0],f[0],s[0]));
    		res.pb(f[0]+s[0]-res.back());
    		erase(res[res.size()-2],f,s);
    		erase(res[res.size()-1],f,s);
    	}
    	else
    	{
    		if(res.empty())
    		{
    			res.pb(getLightest(f[0],f[1],s[0]));
    			erase(res.back(),f,s);
    		}
    		else
    		{
    			res.pb(getMedian(res[0],f[0],s[0]));
    			erase(res.back(),f,s);
    		}
    	}
    	/*cout<<" res ";
    	for(auto A:res)
    		cout<<A<<" ";
    	cout<<"\n f ";
    	for(auto A:f)
    		cout<<A<<" ";
    	cout<<"\n s ";
    	for(auto A:s)
    		cout<<A<<" ";*/
    }
    for(int A=0;A<6;A++)
    	W[A]=res[A]; 
    answer(W);
}

/*int main()
{
	ios_base::sync_with_stdio(false);
	orderCoins();
	return 0;	
}*/

Compilation message

In file included from grader.c:2:0:
graderlib.c: In function 'void answer(int*)':
graderlib.c:53:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
     if (_ghksjhdfkae19ga_ > 1) 
     ^~
graderlib.c:56:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  for (i = 0; i < 6; i++) {
  ^~~
scales.cpp: In function 'void init(int)':
scales.cpp:9:15: warning: unused parameter 'T' [-Wunused-parameter]
 void init(int T)
               ^
scales.cpp: In function 'void erase(int, std::vector<int>&, std::vector<int>&)':
scales.cpp:17:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int A=0;A<f.size();A++)
              ~^~~~~~~~~
scales.cpp:23:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int A=0;A<s.size();A++)
              ~^~~~~~~~~
# Verdict Execution time Memory Grader output
1 Partially correct 2 ms 248 KB Output is partially correct
2 Partially correct 2 ms 356 KB Output is partially correct
3 Partially correct 2 ms 356 KB Output is partially correct
4 Partially correct 3 ms 432 KB Output is partially correct
5 Partially correct 2 ms 508 KB Output is partially correct
6 Partially correct 2 ms 584 KB Output is partially correct
7 Partially correct 2 ms 584 KB Output is partially correct
8 Partially correct 2 ms 584 KB Output is partially correct
9 Partially correct 2 ms 608 KB Output is partially correct
10 Partially correct 2 ms 608 KB Output is partially correct
11 Partially correct 2 ms 608 KB Output is partially correct
12 Partially correct 2 ms 608 KB Output is partially correct
13 Partially correct 2 ms 608 KB Output is partially correct
14 Partially correct 2 ms 608 KB Output is partially correct
15 Partially correct 2 ms 608 KB Output is partially correct
16 Partially correct 2 ms 608 KB Output is partially correct
17 Partially correct 2 ms 608 KB Output is partially correct
18 Partially correct 2 ms 608 KB Output is partially correct
19 Partially correct 2 ms 608 KB Output is partially correct
20 Partially correct 2 ms 608 KB Output is partially correct
21 Partially correct 2 ms 608 KB Output is partially correct
22 Partially correct 3 ms 608 KB Output is partially correct
23 Partially correct 2 ms 608 KB Output is partially correct
24 Partially correct 2 ms 608 KB Output is partially correct
25 Partially correct 2 ms 608 KB Output is partially correct
26 Partially correct 2 ms 608 KB Output is partially correct
27 Partially correct 2 ms 608 KB Output is partially correct
28 Partially correct 2 ms 608 KB Output is partially correct
29 Partially correct 3 ms 608 KB Output is partially correct
30 Partially correct 2 ms 608 KB Output is partially correct
31 Partially correct 2 ms 608 KB Output is partially correct
32 Partially correct 2 ms 608 KB Output is partially correct
33 Partially correct 4 ms 608 KB Output is partially correct
34 Partially correct 2 ms 608 KB Output is partially correct
35 Partially correct 2 ms 608 KB Output is partially correct
36 Partially correct 3 ms 608 KB Output is partially correct
37 Partially correct 3 ms 608 KB Output is partially correct
38 Partially correct 2 ms 608 KB Output is partially correct
39 Partially correct 2 ms 608 KB Output is partially correct
40 Partially correct 3 ms 608 KB Output is partially correct