Submission #427990

# Submission time Handle Problem Language Result Execution time Memory
427990 2021-06-15T06:49:35 Z Bill_00 Scales (IOI15_scales) C++14
45.4545 / 100
1 ms 324 KB
#include "scales.h"
#include <bits/stdc++.h>
using namespace std;
 
void init(int T) {
    /* ... */
}
int a[7],w[6];
void orderCoins() {
	memset(a,0,sizeof(a));
	memset(w,0,sizeof(w));
    /* ... */
    a[3]=getHeaviest(1,2,3);
    a[1]=getLightest(1,2,3);
    for(int i=1;i<=3;i++){
    	if(i!=a[1] && i!=a[3]){
    		a[2]=i;
    	}
    }
    a[4]=getLightest(4,5,6);
    a[6]=getHeaviest(4,5,6);
    for(int i=4;i<=6;i++){
    	if(i!=a[4] && i!=a[6]){
    		a[5]=i;
    	}
    }
    int x=getNextLightest(1,2,3,a[4]);
    if(x==a[2]){
    	w[0]=a[1];
    	w[1]=a[4];
    	int z=getMedian(a[2],a[3],a[5]);
    	if(z==a[2]){
    		w[2]=a[5];
    		int zz=getMedian(a[2],a[3],a[6]);
    		if(zz==a[2]){
    			w[3]=a[6];
    			w[4]=a[2];
    			w[5]=a[3];
    		}
    		if(zz==a[3]){
    			w[3]=a[2];
    			w[4]=a[3];
    			w[5]=a[6];
    		}
    		if(zz==a[6]){
    			w[3]=a[2];
    			w[4]=a[6];
    			w[5]=a[3];
    		}
    		answer(w);
    	}
    	if(z==a[3]){
    		w[2]=a[2];
    		w[3]=a[3];
    		w[4]=a[5];
    		w[5]=a[6];
    		answer(w);
    	}
    	if(z==a[5]){
    		w[2]=a[2];
    		w[3]=a[5];
    		int zz=getHeaviest(a[5],a[6],a[3]);
    		if(zz==a[6]){
    			w[4]=a[3];
    			w[5]=a[6];
    		}
    		else{
    			w[4]=a[6];
    			w[5]=a[3];
    		}
    		answer(w);
    	}
    }
    if(x==a[3]){
    	w[0]=a[1];
    	w[1]=a[2];
    	w[2]=a[4];
    	int z=getNextLightest(4,5,6,a[3]);
    	// int t=getLightest(a[4],a[5],a[3]);
    	if(z==a[4]){
    		w[3]=a[5];
    		w[4]=a[6];
    		w[5]=a[3];
    	}
    	if(z==a[5]){
    		w[3]=a[3];
    		w[4]=a[5];
    		w[5]=a[6];
    	}
    	if(z==a[6]){
    		w[3]=a[5];
    		w[4]=a[3];
    		w[5]=a[6];
    	}
    	answer(w);
    }
    if(x==a[1]){
    	int z=getLightest(a[1],a[2],a[4]);
    	if(z==a[1]){
    		w[0]=a[1];
    		w[1]=a[2];
    		w[2]=a[3];
    		w[3]=a[4];
    		w[4]=a[5];
    		w[5]=a[6];
    		answer(w);
    	}
    	else{
    		w[0]=a[4];
    		int t=getMedian(a[1],a[5],a[6]);
    		if(t==a[5]){
    			w[1]=a[1];
    			int p=getMedian(a[2],a[5],a[6]);
    			if(p==a[5]){
    				w[2]=a[2];
    				int r=getMedian(a[3],a[5],a[6]);
    				if(r==a[5]){
    					w[3]=a[3];
    					w[4]=a[5];
    					w[5]=a[6];
    				}
    				if(r==a[3]){
    					w[3]=a[5];
    					w[4]=a[3];
    					w[5]=a[6];
    				}
    				if(r==a[6]){
    					w[3]=a[5];
    					w[4]=a[6];
    					w[5]=a[3];
    				}
    				answer(w);
    			}
    			if(p==a[2]){
    				w[2]=a[5];
    				w[3]=a[2];
    				int r=getHeaviest(a[2],a[3],a[6]);
    				if(r==a[6]){
    					w[4]=a[3];
    					w[5]=a[6];
    				}
    				else{
    					w[4]=a[6];
    					w[5]=a[3];
    				}
    				answer(w);
    			}
    			if(p==a[6]){
    				w[2]=a[5];
    				w[3]=a[6];
    				w[4]=a[2];
    				w[5]=a[3];
    				answer(w);
    			}
    		}
    		if(t==a[1]){
    			w[1]=a[5];
    			w[2]=a[1];
    			int p=getMedian(a[2],a[3],a[6]);
    			if(p==a[2]){
    				w[3]=a[6];
    				w[4]=a[2];
    				w[5]=a[3];
    			}
    			if(p==a[3]){
    				w[3]=a[2];
    				w[4]=a[3];
    				w[5]=a[6];
    			}
    			if(p==a[6]){
    				w[3]=a[2];
    				w[4]=a[6];
    				w[5]=a[3];
    			}
    			answer(w);
    		}
    		if(t==a[6]){
    			w[1]=a[5];
    			w[2]=a[6];
    			w[3]=a[1];
    			w[4]=a[2];
    			w[5]=a[3];
    			answer(w);
    		}
    	}
    }
}

Compilation message

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