QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#885388 | #9237. Message | Geekmen | 49.609 | 209ms | 3840kb | C++17 | 1.9kb | 2025-02-06 15:30:01 | 2025-02-06 15:30:04 |
Judging History
answer
#include <iostream>
#include <vector>
#include "message.h"
using namespace std;
void send_message(std::vector<bool> M, std::vector<bool> C) {
int S = M.size();
std::vector<int> pos;
int sum = 0;
for (int i = 0; i < 30; i ++) {
// cout << "ok" << endl;
if (sum == 15) {
for (int j = i; j < 30; j ++)
if (!C[j]) pos.push_back(j);
break;
}
if (!pos.size()) {
send_packet(vector<bool>(31, C[i]));
if (!C[i]) pos.push_back(i);
else sum ++;
}
else {
std::vector<bool> tmp(31);
int L = pos.size(), j;
for (j = 0; j < L && i + j < 30; j ++) {
tmp[pos[j]] = C[i + j];
if (!C[i + j]) pos.push_back(i + j);
else sum ++;
}
send_packet(tmp), i = i + j - 1;
}
}
if (!C[30]) pos.push_back(30);
std::vector<bool> len(31);
for (int i = 0; i < 16; i ++)
len[pos[i]] = S >> i & 1;
send_packet(len);
for (int i = 0; i < S; i += 16) {
std::vector<bool> tmp(31);
for (int j = i; j < min(i + 16, S); j ++)
tmp[pos[j - i]] = M[j];
send_packet(tmp);
}
}
std::vector<bool> receive_message(std::vector<vector<bool>> R) {
// cout << "OK" << endl;
std::vector<int> pos;
int sum = 0, pt = 0, i;
for (i = 0; i < R.size(); i ++) {
if (pt == 30) break;
if (sum == 15) {
for (int j = pt; j < 30; j ++)
pos.push_back(j);
break;
}
if (!pos.size()) {
int C[2] = {0};
for (int j = 0; j < 31; j ++)
C[R[i][j]] ++;
if (C[0] > C[1]) pos.push_back(i);
sum += C[1] > C[0], pt ++;
} else {
int L = pos.size(), j;
for (j = 0; j < L && pt + j < 30; j ++)
if (!R[i][pos[j]])
pos.push_back(pt + j);
else sum ++;
pt += j;
}
}
if (sum == 15) pos.push_back(30);
int S = 0;
for (int j = 0; j < 16; j ++)
S |= (R[i][pos[j]] << j);
i ++;
std::vector<bool> res;
for (; i < R.size(); i ++)
for (auto j : pos)
res.push_back(R[i][j]);
while (res.size() > S) res.pop_back();
return res;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 10
Accepted
Test #1:
score: 10
Accepted
time: 76ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #2:
score: 10
Accepted
time: 36ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #3:
score: 10
Accepted
time: 48ms
memory: 3712kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #4:
score: 10
Accepted
time: 48ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #5:
score: 10
Accepted
time: 27ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #6:
score: 10
Accepted
time: 23ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #7:
score: 10
Accepted
time: 15ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Subtask #2:
score: 39.609
Acceptable Answer
Test #8:
score: 43.893
Acceptable Answer
time: 207ms
memory: 3712kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.4877
result:
points 0.4877
Test #9:
score: 59.706
Acceptable Answer
time: 117ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.6634
result:
points 0.6634
Test #10:
score: 39.609
Acceptable Answer
time: 209ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.4401
result:
points 0.4401
Test #11:
score: 46.197
Acceptable Answer
time: 205ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.5133
result:
points 0.5133
Test #12:
score: 48.636
Acceptable Answer
time: 191ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.5404
result:
points 0.5404
Test #13:
score: 41.697
Acceptable Answer
time: 144ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.4633
result:
points 0.4633
Test #14:
score: 43.893
Acceptable Answer
time: 98ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.4877
result:
points 0.4877
Test #15:
score: 41.697
Acceptable Answer
time: 126ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.4633
result:
points 0.4633
Test #16:
score: 41.697
Acceptable Answer
time: 136ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.4633
result:
points 0.4633
Test #17:
score: 90
Accepted
time: 38ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #18:
score: 90
Accepted
time: 66ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #19:
score: 90
Accepted
time: 81ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #20:
score: 90
Accepted
time: 75ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #21:
score: 90
Accepted
time: 105ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #22:
score: 90
Accepted
time: 132ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #23:
score: 90
Accepted
time: 146ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #24:
score: 90
Accepted
time: 156ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
1
result:
points 1.0
Test #25:
score: 77.166
Acceptable Answer
time: 185ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.8574
result:
points 0.8574
Test #26:
score: 48.636
Acceptable Answer
time: 196ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.5404
result:
points 0.5404
Test #27:
score: 51.192
Acceptable Answer
time: 186ms
memory: 3840kb
Manager to Aisha
Aisha to Manager
Manager to Basma
Basma to Manager
Manager to Checker
0.5688
result:
points 0.5688