#include <iostream>
#include <cmath>
#include<vector>
#include <algorithm>
#include <utility>
#include<stack>
#include<queue>
#include<map>
#include <fstream>
#include <minerals.h>
using namespace std;
#define pb push_back
#define mp make_pair
#define ll long long
#define ans Answer
#define query Query
bool inside[100010];
int memo[100010];
int nn;
int curr,opencurr,tmp;
void conquer( vector<int> l, vector<int> r )
{
int sz = l.size()/2;
if( l.size()==1 ){
ans( l[0], r[0] );
return;
}
vector<int> l1, l2;
l1.clear();
l2.clear();
int cnt=0;
for( int i=0;i<sz;i++ ){
l1.pb( l[i] );
if( !inside[ l[i] ] ){ /// mora biti unutra
cnt= query( l[i] ); ///update cnt kad ubacimo
inside[ l[i] ]=true;
}
}
for( int i=sz;i<l.size();i++ ){
l2.pb( l[i] );
if( inside[ l[i] ] ){ /// ne smije bit unutra
cnt=query( l[i] );
inside[ l[i] ]=false;
}
}
vector<int> r1,r2;
r1.clear();
r2.clear();
for( int i=0;i<r.size();i++ ){
int tmp=query( r[i] );
if( tmp == cnt ){ /// nista se nije desilo, dakle vec je bio taj mineral
r1.pb( r[i] );
}
else{ /// promjenio se broj, dakle dodali smo novi mineral, prema tome on pripada grupi koja je izgasena
r2.pb( r[i] );
cnt = tmp;
}
}
// cout << l.size() << " " << r.size() << " bruh " <<endl;
// for( int i=0;i<l1.size();i++ ){
// cout << l1[i] << " " << r1[i] << " bree " <<endl;
// }
conquer( l1,r1 );
conquer( l2,r2 );
}
void Solve(int n)
{
nn=n;///globalno n
int curr=0;
vector<int> left,right;
for( int i=1;i<=2*n;i++ ){
int tmp=query(i);
if( tmp > curr ){ ///novi
left.pb( i );
inside[i] = true;
curr=tmp;
}
else{
right.pb(i);
/// curr=query(i); /// izbaci
}
}
// cout << left[0] << " " <<left[1] << " " <<right[0 ] << " " << right[1 ] << " budal;e " <<endl;
conquer( left, right );
}
Compilation message
minerals.cpp: In function 'void conquer(std::vector<int>, std::vector<int>)':
minerals.cpp:47:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for( int i=sz;i<l.size();i++ ){
~^~~~~~~~~
minerals.cpp:57:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for( int i=0;i<r.size();i++ ){
~^~~~~~~~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
3 ms |
376 KB |
Output is correct |
2 |
Correct |
4 ms |
380 KB |
Output is correct |
3 |
Correct |
7 ms |
552 KB |
Output is correct |
4 |
Correct |
12 ms |
764 KB |
Output is correct |
5 |
Correct |
23 ms |
1528 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
15 |
Correct |
62 ms |
3272 KB |
Output is correct |
16 |
Correct |
63 ms |
3360 KB |
Output is correct |
17 |
Correct |
49 ms |
3164 KB |
Output is correct |
18 |
Correct |
50 ms |
3028 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
15 |
Correct |
62 ms |
3272 KB |
Output is correct |
16 |
Correct |
63 ms |
3360 KB |
Output is correct |
17 |
Correct |
49 ms |
3164 KB |
Output is correct |
18 |
Correct |
50 ms |
3028 KB |
Output is correct |
19 |
Correct |
65 ms |
3408 KB |
Output is correct |
20 |
Correct |
68 ms |
3328 KB |
Output is correct |
21 |
Correct |
50 ms |
3192 KB |
Output is correct |
22 |
Correct |
51 ms |
3120 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
15 |
Correct |
62 ms |
3272 KB |
Output is correct |
16 |
Correct |
63 ms |
3360 KB |
Output is correct |
17 |
Correct |
49 ms |
3164 KB |
Output is correct |
18 |
Correct |
50 ms |
3028 KB |
Output is correct |
19 |
Correct |
65 ms |
3408 KB |
Output is correct |
20 |
Correct |
68 ms |
3328 KB |
Output is correct |
21 |
Correct |
50 ms |
3192 KB |
Output is correct |
22 |
Correct |
51 ms |
3120 KB |
Output is correct |
23 |
Correct |
66 ms |
3508 KB |
Output is correct |
24 |
Correct |
69 ms |
3492 KB |
Output is correct |
25 |
Correct |
51 ms |
3452 KB |
Output is correct |
26 |
Correct |
54 ms |
3068 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
15 |
Correct |
62 ms |
3272 KB |
Output is correct |
16 |
Correct |
63 ms |
3360 KB |
Output is correct |
17 |
Correct |
49 ms |
3164 KB |
Output is correct |
18 |
Correct |
50 ms |
3028 KB |
Output is correct |
19 |
Correct |
65 ms |
3408 KB |
Output is correct |
20 |
Correct |
68 ms |
3328 KB |
Output is correct |
21 |
Correct |
50 ms |
3192 KB |
Output is correct |
22 |
Correct |
51 ms |
3120 KB |
Output is correct |
23 |
Correct |
66 ms |
3508 KB |
Output is correct |
24 |
Correct |
69 ms |
3492 KB |
Output is correct |
25 |
Correct |
51 ms |
3452 KB |
Output is correct |
26 |
Correct |
54 ms |
3068 KB |
Output is correct |
27 |
Incorrect |
66 ms |
3492 KB |
Wrong Answer [2] |
28 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
15 |
Correct |
62 ms |
3272 KB |
Output is correct |
16 |
Correct |
63 ms |
3360 KB |
Output is correct |
17 |
Correct |
49 ms |
3164 KB |
Output is correct |
18 |
Correct |
50 ms |
3028 KB |
Output is correct |
19 |
Correct |
65 ms |
3408 KB |
Output is correct |
20 |
Correct |
68 ms |
3328 KB |
Output is correct |
21 |
Correct |
50 ms |
3192 KB |
Output is correct |
22 |
Correct |
51 ms |
3120 KB |
Output is correct |
23 |
Correct |
66 ms |
3508 KB |
Output is correct |
24 |
Correct |
69 ms |
3492 KB |
Output is correct |
25 |
Correct |
51 ms |
3452 KB |
Output is correct |
26 |
Correct |
54 ms |
3068 KB |
Output is correct |
27 |
Incorrect |
66 ms |
3492 KB |
Wrong Answer [2] |
28 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
248 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
3 ms |
376 KB |
Output is correct |
6 |
Correct |
4 ms |
380 KB |
Output is correct |
7 |
Correct |
7 ms |
552 KB |
Output is correct |
8 |
Correct |
12 ms |
764 KB |
Output is correct |
9 |
Correct |
23 ms |
1528 KB |
Output is correct |
10 |
Correct |
4 ms |
376 KB |
Output is correct |
11 |
Correct |
16 ms |
1120 KB |
Output is correct |
12 |
Correct |
24 ms |
1448 KB |
Output is correct |
13 |
Correct |
19 ms |
1452 KB |
Output is correct |
14 |
Correct |
19 ms |
1316 KB |
Output is correct |
15 |
Correct |
62 ms |
3272 KB |
Output is correct |
16 |
Correct |
63 ms |
3360 KB |
Output is correct |
17 |
Correct |
49 ms |
3164 KB |
Output is correct |
18 |
Correct |
50 ms |
3028 KB |
Output is correct |
19 |
Correct |
65 ms |
3408 KB |
Output is correct |
20 |
Correct |
68 ms |
3328 KB |
Output is correct |
21 |
Correct |
50 ms |
3192 KB |
Output is correct |
22 |
Correct |
51 ms |
3120 KB |
Output is correct |
23 |
Correct |
66 ms |
3508 KB |
Output is correct |
24 |
Correct |
69 ms |
3492 KB |
Output is correct |
25 |
Correct |
51 ms |
3452 KB |
Output is correct |
26 |
Correct |
54 ms |
3068 KB |
Output is correct |
27 |
Incorrect |
66 ms |
3492 KB |
Wrong Answer [2] |
28 |
Halted |
0 ms |
0 KB |
- |