# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
199136 | godwind | Parrots (IOI11_parrots) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
//#include "grader.h"
// O O O O O O O O O O O O O O O OO O OO O OO O O O TTCH O TTTCH O TTTCH O O O O
#pragma GCC optimize("Ofast")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("fast-math")
#pragma GCC target("sse,sse2,sse3,ssse3,popcnt,abm,mmx")
#include <iostream>
#include <vector>
#include <algorithm>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <stdio.h>
#include <cstdio>
#include <math.h>
#include <cmath>
#include <string>
#include <cstring>
#include <queue>
#include <deque>
#include <random>
#include <iomanip>
#include <bitset>
#include <cassert>
using namespace std;
#define y1 y11
#define double long double
#define less less228
#define left left228
#define right right228
#define list list228
template<typename T> void uin(T &a, T b) {
if (b < a) a = b;
}
template<typename T> void uax(T &a, T b) {
if (b > a) a = b;
}
random_device rnd;
// vector<int> kek;
// void send(int x) {
// kek.push_back(x);
// }
int base[10];
void pre() {
base[0] = 1;
for (int i = 1; i < 9; ++i) {
base[i] = base[i - 1] * 10;
}
}
int len(int x) {
if (x == 0) return 1;
int l = 0;
while (x) {
x /= 10;
++l;
}
return l;
}
void encode(int n, int M[]) {
pre();
for (int i = 0; i < n; ++i) {
int x = i * base[3] + M[i];
send(x);
}
}
int ans[1000];
// void output(int x) {
// cout << x << endl;
// }
void decode(int n, int L, int X[]) {
for (int i = 0; i < L; ++i) {
int x = X[i] % 1000;
X[i] /= 1000;
int id = X[i];
ans[id] = x;
}
for (int i = 0; i < n; ++i) {
output(ans[i]);
}
}
// int x[100];
// signed main() {
// int n;
// cin >> n;
// for (int i = 0; i < n; ++i) {
// cin >> x[i];
// }
// encode(n, x);
// for (int i = 1; i < (int)kek.size(); ++i) {
// swap(kek[i], kek[rnd() % i]);
// }
// for (int i = 0; i < (int)kek.size(); ++i) {
// x[i] = kek[i];
// }
// decode(n, (int)kek.size(), x);
// }