# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
301787 | tatyam | Saveit (IOI10_saveit) | C++17 | 689 ms | 11504 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 <bits/stdc++.h>
using namespace std;
const int INF = 0x3fffffff;
template<class T> bool chmin(T& a, const T& b){ if(a > b){ a = b; return 1; } return 0; }
void encode_bit(int b);
void encode(int N, int H, int P, int A[], int B[]);
void encode_num(int num, int size){
for(int i = size; i--; ) encode_bit(num >> i & 1);
}
using BigInt = array<int, 1585>; // 1000 * log_2(3) = 1585
void encode_BigInt(vector<int> B){ // ternary to binary
BigInt a;
a.fill(0);
reverse(B.begin(), B.end());
for(int b : B){
for(int i = a.size() - 1; i--; ) a[i + 1] += a[i];
if(b & 1) a[0]++;
if(b & 2) a[1]++;
for(int i = 0; i < a.size() - 1; i++){
a[i + 1] += a[i] >> 1;
a[i] &= 1;
}
}
for(int i : a) encode_bit(i);
}
void encode(int N, int H, int P, int A[], int B[]){
vector<vector<int>> g(N);
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |