Submission #1322075

#TimeUsernameProblemLanguageResultExecution timeMemory
1322075khoianhcmp (balkan11_cmp)C++20
Compilation error
0 ms0 KiB
#include<bits/stdc++.h>
#include "cmp.h"
using namespace std;
typedef long long ll;

//const int mn = 1e5 + 5;
//ll p[5] = {0, 
//	(1 << 3),
//	(1 << 3) + (1 << 6),
//	(1 << 3) + (1 << 6) + (1 << 9)};
//
//ll wow[mn];

//void bit_set(ll a){
////	assert(wow[a] == 0);
//	cout << "set " << a << "\n";
//	wow[a] = 1;
//}
//
//ll bit_get(ll a){
//	cout << "get " << a << "\n";
//	return wow[a];
//}

ll hehe(ll a, ll k){
//	cout << (9 - (k - (k % 3))) << "\n";
	return a - (a % (1 << k)) + p[(9 - (k - (k % 3))) / 3];
}

ll haha(ll a, ll k){
	return bit_get(hehe(a, k));
}

void remember(int a){
	for(int i = 9; i >= 0; i -= 3){
		bit_set(hehe(a, i));
	}
}

int compare(int b){
	if(!haha(b, 3)){
		if(haha(b, 6)){
			if(haha(b ^ (1 << 3), 3)){
				if(b > (b ^ (1 << 3))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 4), 4)){
				if(b > (b ^ (1 << 4))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 4) ^ (1 << 3), 4)){
				if(b > (b ^ (1 << 3) ^ (1 << 4))) return 1;
				return -1;
			}
			if(b > (b ^ (1 << 5))) return 1;
			return -1;
		} 
		if(haha(b, 9)){
			if(haha(b ^ (1 << 6), 6)){
				if(b > (b ^ (1 << 6))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 7), 7)){
				if(b > (b ^ (1 << 7))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 7) ^ (1 << 6), 7)){
				if(b > (b ^ (1 << 6) ^ (1 << 7))) return 1;
				return -1;
			}
			if(b > (b ^ (1 << 8))) return 1;
			return -1;
		} else {
			if(haha(b ^ (1 << 9), 9)){
				if(b > (b ^ (1 << 9))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 10), 10)){
				if(b > (b ^ (1 << 10))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 10) ^ (1 << 9), 10)){
				if(b > (b ^ (1 << 10) ^ (1 << 9))) return 1;
				return -1;
			}
			if(b > (b ^ (1 << 11))) return 1;
			return -1;
			
		}
	} else {
		if(!haha(b, 0)){
			if(haha(b ^ (1 << 0), 0)){
				if(b > (b ^ (1 << 0))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 1), 1)){
				if(b > (b ^ (1 << 1))) return 1;
				return -1;
			}
			if(haha(b ^ (1 << 1) ^ (1 << 0), 1)){
				if(b > (b ^ (1 << 0) ^ (1 << 1))) return 1;
				return -1;
			}
			if(b > (b ^ (1 << 2))) return 1;
			return -1;
		} else {
			return 0;
		}
	}
}

//mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
//
//int main(){
//	ios_base::sync_with_stdio(false);
//	cin.tie(NULL);
//	if(fopen(".INP", "r")) {
//		freopen(".INP", "r", stdin);
//		freopen(".OUT", "w", stdout);
//	}
//	int testCase = 1;
//	//cin >> testCase;
//	while(testCase--){
//		ll a = rng() % 8, b = rng() % 8;
//		remember(a);
////		compare(b);
//		cout << a << " " << b << " " <<  compare(b);
//	}
//}

Compilation message (stderr)

cmp.cpp: In function 'll hehe(ll, ll)':
cmp.cpp:27:37: error: 'p' was not declared in this scope
   27 |         return a - (a % (1 << k)) + p[(9 - (k - (k % 3))) / 3];
      |                                     ^