Submission #1162368

#TimeUsernameProblemLanguageResultExecution timeMemory
1162368i271828Unscrambling a Messy Bug (IOI16_messy)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
using namespace std;

int ans[128];

/*
void add_element(string x){
	cout<<"A";
	for (int i=0;i<4;i++) cout<<x[i];
	cout<<'\n';
}
void compile_set(){}
bool check_element(string x){
	cout<<"C";
	for (int i=0;i<4;i++) cout<<x[i];
	cout<<'\n';
	bool v;
	cin>>v;
	return v;
}
/**/
void add(int s,int e,int fs,int fe){
	if (s==e) return;
	bitset<128> x=0;
	for (int i=fs;i<=fe;i++) x[i]=1;
	int m=(s+e)>>1;
	for (int i=s;i<=m;i++){
		if (i>s) x[i-1]=0;
		x[i]=1;
		string xs;
		for (int i=0;i<128;i++) xs.push_back(x[i]+'0');
		add_element(xs);
	}
	add(s,m,m+1,e);
	add(m+1,e,s,m);
}

void find(int s,int e,bitset<128>& values, bitset<128>& flag){
	if (s==e){
		for (int i=0;i<128;i++){
			if (values[i]) ans[i]=s;
		}
		return;
	}
	bitset<128> x;
	bitset<128> left=0;
	bitset<128> right=0;
	for (int i=0;i<128;i++){
		if (values[i]){
			x=flag;
			x[i]=1;
			string xs;
			for (int i=0;i<128;i++) xs.push_back(x[i]+'0');
			
			if (check_element(xs)){
				left[i]=1;
			}else{
				right[i]=1;
			}
		}
	}
	int m=(s+e)>>1;
	find(s,m,left,right);
	find(m+1,e,right,left);
}

void restore_permutation(int N, int w, int r, int* result){
	add(0,N-1,1,0);
	compile_set();
	bitset<128> values=0;
	for (int i=0;i<N;i++) values[i]=1;
	bitset<128> flag=0;
	find(0,N-1,values,flag);
	for (int i=0;i<N;i++) result[i]=ans[i];
}

Compilation message (stderr)

messy.cpp: In function 'void add(int, int, int, int)':
messy.cpp:32:17: error: 'add_element' was not declared in this scope
   32 |                 add_element(xs);
      |                 ^~~~~~~~~~~
messy.cpp: In function 'void find(int, int, std::bitset<128>&, std::bitset<128>&)':
messy.cpp:55:29: error: 'check_element' was not declared in this scope
   55 |                         if (check_element(xs)){
      |                             ^~~~~~~~~~~~~
messy.cpp: In function 'void restore_permutation(int, int, int, int*)':
messy.cpp:69:9: error: 'compile_set' was not declared in this scope
   69 |         compile_set();
      |         ^~~~~~~~~~~
messy.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
messy_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~