Submission #1135880

#TimeUsernameProblemLanguageResultExecution timeMemory
1135880raspyUnscrambling a Messy Bug (IOI16_messy)C++20
0 / 100
1 ms584 KiB
#include <vector>
#include <string>

#include "messy.h"

#define pb push_back
#define f first
#define s second

using namespace std;

vector<int> restore_permutation(int n, int w, int r)
{
	for (int dl = n; dl>=2; dl/=2)
	{
		for (int zc = 0; zc < n; zc+=dl)
		{
			string t = "";
			for (int i = 0; i < n; i++) t.pb((i>=zc&&i<zc+dl ? '0' : '1'));
			for (int i = zc; i < zc+dl/2; i++)
			{
				t[i] = '1';
				add_element(t);
				t[i] = '0';
			}
		}
	}
	compile_set();
	vector<pair<int, int>> mj(n, {0, n-1});
	for (int i = 0; i < n; i++)
	{
		string t = "";
		for (int j = 0; j < n; j++)
			t.pb((j>=mj[i].f&&i<=mj[i].s ? '0' : '1'));
		t[i] = '1';
		bool o = check_element(t);
		if (o)
			mj[i] = {mj[i].f, (mj[i].f+mj[i].s)/2};
		else
			mj[i] = {(mj[i].f+mj[i].s)/2, (mj[i].s)};
	}
	vector<int> rez;
	for (int i = 0; i < n; i++)
		rez.pb(mj[i].f);
	return rez;
}

Compilation message (stderr)

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
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...