Submission #668429

# Submission time Handle Problem Language Result Execution time Memory
668429 2022-12-03T21:13:33 Z finn__ Parrots (IOI11_parrots) C++17
81 / 100
5 ms 1156 KB
#include "encoder.h"
#include "encoderlib.h"

void encode(int N, int M[])
{
    for (unsigned i = 0; i < N; i++)
        for (unsigned j = 0; j < 8; j++)
            if (M[i] & (1 << j))
                send((j << 5) | i);
}
#include "decoder.h"
#include "decoderlib.h"
#include <memory.h>

void decode(int N, int L, int X[])
{
    int M[N];
    memset(M, 0, N * sizeof(int));
    for (unsigned i = 0; i < L; i++)
        M[X[i] & 31] |= (1 << (X[i] >> 5));
    for (unsigned i = 0; i < N; i++)
        output(M[i]);
}

Compilation message

encoder.cpp: In function 'void encode(int, int*)':
encoder.cpp:6:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare]
    6 |     for (unsigned i = 0; i < N; i++)
      |                          ~~^~~

decoder.cpp: In function 'void decode(int, int, int*)':
decoder.cpp:9:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare]
    9 |     for (unsigned i = 0; i < L; i++)
      |                          ~~^~~
decoder.cpp:11:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare]
   11 |     for (unsigned i = 0; i < N; i++)
      |                          ~~^~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 640 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1032 KB Output is correct
2 Correct 1 ms 996 KB Output is correct
3 Correct 1 ms 1048 KB Output is correct
4 Correct 1 ms 1048 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 1036 KB Output is correct
2 Correct 1 ms 1036 KB Output is correct
3 Correct 2 ms 1048 KB Output is correct
4 Correct 2 ms 1048 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 908 KB Output is correct
2 Correct 1 ms 1040 KB Output is correct
3 Correct 1 ms 1052 KB Output is correct
4 Correct 3 ms 1056 KB Output is correct
5 Correct 3 ms 1064 KB Output is correct
6 Correct 4 ms 1100 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 1 ms 1032 KB Output is partially correct - P = 8.000000
2 Partially correct 3 ms 1064 KB Output is partially correct - P = 8.000000
3 Incorrect 2 ms 1060 KB Error : Output is wrong
4 Incorrect 3 ms 1068 KB Error : Output is wrong
5 Incorrect 3 ms 1080 KB Error : Output is wrong
6 Incorrect 3 ms 1156 KB Error : Output is wrong
7 Incorrect 5 ms 1080 KB Error : Output is wrong