Submission #602220

#TimeUsernameProblemLanguageResultExecution timeMemory
602220vh50Parrots (IOI11_parrots)C++17
81 / 100
7 ms1260 KiB
#include <bits/stdc++.h>
#include "encoder.h"
#include "encoderlib.h"
using namespace std;
void encode(int N, int M[])
{
    for(int i = 0; i < N; i++)
        for(int j = 0; j < 3; j++)
        {
            if(j >= 0)  send((i << 3) + (((M[i] >> (3 * j)) & 7)));
            if(j >= 1)  send((i << 3) + (((M[i] >> (3 * j)) & 7)));
            if(j >= 2)  
            {
                send((i << 3) + (((M[i] >> (3 * j)) & 7)));
                send((i << 3) + (((M[i] >> (3 * j)) & 7)));
            }
        }            
}
#include <bits/stdc++.h>
#include "decoder.h"
#include "decoderlib.h"
using namespace std;
void decode(int N, int L, int X[])
{
    int marc[300], v[300];
    for(int i = 0; i < 270; i++)    marc[i] = v[i] = 0;
    sort(X, X + L);
    for(int i = 0; i < L; i++)
        marc[X[i]]++;
    for(int i = 0; i < 256; i++)
    {
        if(!marc[i])    continue; 
        if(marc[i] & (1 << 0))  
            v[i >> 3] += ((i & 7) << ((0) * 3));
        if(marc[i] & (1 << 1))
            v[i >> 3] += ((i & 7) << ((1) * 3));
        if(marc[i] & (1 << 2))
            v[i >> 3] += ((i & 7) << ((2) * 3));
    }
    for(int i = 0; i < N; i++)  output(v[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...