Submission #262048

# Submission time Handle Problem Language Result Execution time Memory
262048 2020-08-12T10:08:02 Z Nightlight Parrots (IOI11_parrots) C++14
81 / 100
24 ms 5356 KB
#include "encoder.h"
#include "encoderlib.h"
#include <bits/stdc++.h>
using namespace std;

int ada = 0;

void encode(int N, int M[]) {
  ada = 0;
  for(int i = 0; i < N; i++) {
    for(int j = 0; j < 8; j++) {
      if(M[i] & (1 << j)) ada++;
    }
  }
  if(ada > 4 * N + 1) {
    send(0), send(0);
    for(int i = 0; i < N; i++) {
      for(int j = 0; j < 8; j++) {
        if(!(M[i] & (1 << j))) send(j * N + i);
      }
    }
  }else {
    for(int i = 0; i < N; i++) {
      for(int j = 0; j < 8; j++) {
        if(M[i] & (1 << j)) send(j * N + i);
      }
    }
  }
}
#include "decoder.h"
#include "decoderlib.h"
#include <bits/stdc++.h>
using namespace std;

int ans[10005];
int cnt[1000005];
bool zero = 0;

void decode(int N, int L, int X[]) {
  memset(ans, 0, sizeof(ans));
  memset(cnt, 0, sizeof(cnt));
  for(int i = 0; i < L; i++) cnt[X[i]]++;
  if(cnt[0] > 1) zero = 1; 
  else zero = 0;
  if(zero) {
    for(int i = 1; i < 99999; i++) if(cnt[i]) ans[i % N] |= (1 << (i / N));
    if(cnt[0] == 3) ans[0] |= 1;
    for(int i = 0; i < N; i++) {
//      cout << ((~ans[i]) & 255) << "\n"; 
      output((~ans[i]) & 255);
    }
  }else {
    for(int i = 0; i < 99999; i++) if(cnt[i]) ans[i % N] |= (1 << (i / N));
    for(int i = 0; i < N; i++) output(ans[i]);
  }
//  system("pause");
}
# Verdict Execution time Memory Grader output
1 Correct 7 ms 4776 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 16 ms 5216 KB Output is correct
2 Correct 17 ms 5136 KB Output is correct
3 Correct 18 ms 5140 KB Output is correct
4 Correct 18 ms 5280 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 18 ms 5208 KB Output is correct
2 Correct 19 ms 5332 KB Output is correct
3 Correct 17 ms 5140 KB Output is correct
4 Correct 18 ms 5268 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 20 ms 5220 KB Output is correct
2 Correct 20 ms 5344 KB Output is correct
3 Correct 19 ms 5340 KB Output is correct
4 Correct 19 ms 5336 KB Output is correct
5 Correct 24 ms 5172 KB Output is correct
6 Correct 19 ms 5304 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 19 ms 5356 KB Output is correct - P = 4.062500
2 Correct 24 ms 5336 KB Output is correct - P = 4.000000
3 Incorrect 2 ms 972 KB Error : Bad encoded integer
4 Incorrect 1 ms 912 KB Error : Bad encoded integer
5 Incorrect 1 ms 972 KB Error : Bad encoded integer
6 Incorrect 1 ms 984 KB Error : Bad encoded integer
7 Incorrect 1 ms 912 KB Error : Bad encoded integer