Submission #1233464

#TimeUsernameProblemLanguageResultExecution timeMemory
1233464kaltspielerhyData Transfer (IOI19_transfer)C++20
2 / 100
77 ms3260 KiB
#include "transfer.h"
#include <bits/stdc++.h>
using namespace std;

// avoir le full de 2 problèmes sans pouvoir les coder...

vector<int> get_attachment(vector<int> source) {
	vector<int> res;
	vector<int> nbUns(10, 0);
	for (int i : source) {
		res.push_back(i);
		if (i == 1) {
			nbUns[0]++;
			int i2 = 0;
			while (nbUns[i2] > 1) {
				nbUns[i2] = 0;
				nbUns[i2+1]++;
				i2++;
			}
		}
	}

	for (int i : nbUns) res.push_back(i);
	return res;
}

vector<int> retrieve(vector<int> data) {
	int N = 255;

	vector<int> nbUns2(10, 0);
	for (int i = 0; i < N; i++) {
		if (data[i] == 1) {
			nbUns2[0]++;
			int i2 = 0;
			while (nbUns2[i2] > 1) {
				nbUns2[i2] = 0;
				nbUns2[i2+1]++;
				i2++;
			}
		}
	}

// 	for (int i : data) cerr << i;
// 	vector<int> fz(data.begin(), data.begin()+N);
// 	cerr << '\n';
// 	for (int i : nbUns2) cerr << i;
	for (int i = 0; i < 10; i++) {
		if (data[N*2+i] != nbUns2[i]) return vector<int>(data.begin()+N, data.end()-10);
	}
	return vector<int>(data.begin(), data.begin()+N);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...