Submission #1140431

#TimeUsernameProblemLanguageResultExecution timeMemory
1140431MaaxleParrots (IOI11_parrots)C++20
26 / 100
7 ms840 KiB
#include "encoder.h"
#include "encoderlib.h"
#include <bits/stdc++.h>

#define range(it, a, b) for (int it = a; it < b; it++)
#define invr(it, a, b) for (int it = a; it >= b; it--)
#define all(x) begin(x), end(x)
#define ll long long
#define ull unsigned long long
#define ld long double
#define INF64 ((ll) 1 << 62)
#define INF32 (1 << 30)
#define mset multiset
#define uset unordered_set
#define umap unordered_map 
#define pqueue priority_queue 
#define ptr(A) shared_ptr<A>
#define v(x) vector<x>

using namespace std;

void encode(int N, int M[]) {
  int pows[4] = {1, 3, 9, 27};
  
  range(i, 0, N) {
    int x = M[i];
    int aux = (i << 2);
    
    invr(p, 3, 0) {
      while (x >= pows[p])
        send(aux + p), x -= pows[p];
    }
  }
}
#include "decoder.h"
#include "decoderlib.h"
#include<bits/stdc++.h>

#define range(it, a, b) for (int it = a; it < b; it++)
#define invr(it, a, b) for (int it = a; it >= b; it--)
#define all(x) begin(x), end(x)
#define ll long long
#define ull unsigned long long
#define ld long double
#define INF64 ((ll) 1 << 62)
#define INF32 (1 << 30)
#define mset multiset
#define uset unordered_set
#define umap unordered_map 
#define pqueue priority_queue 
#define ptr(A) shared_ptr<A>
#define v(x) vector<x>

using namespace std;

void decode(int N, int L, int X[]) {
  int pows[4] = {1, 3, 9, 27};
  v(int) ans (N);

  range(i, 0, L) {
    int ii = (X[i] >> 2);
    int p = X[i] & 3;
    ans[ii] += pows[p];
  }

  range(i, 0, N) {
    output(ans[i]);
  }
}
#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...