QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#885487#9237. MessageASnown29.314 269ms3840kbC++201.8kb2025-02-06 15:55:202025-02-06 15:55:21

Judging History

This is the latest submission verdict.

  • [2025-02-06 15:55:21]
  • Judged
  • Verdict: 29.314
  • Time: 269ms
  • Memory: 3840kb
  • [2025-02-06 15:55:20]
  • Submitted

answer

#include<bits/stdc++.h>
#include "message.h"
using namespace std;
const int pL=16;
void send_message(vector<bool> M, vector<bool> C) {
   mt19937 rnd(892348892);
   vector<bitset<pL>> pri(31);
   for(int i=0;i<=30;i++) pri[i]=rnd();
   vector<int> pos;
   for(int i=0;i<=30;i++) if(!C[i]) pos.emplace_back(i);
   assert(pos.size()==16);
   for(int i=0;i<=30;i++) {
      vector<bool> A(31,C[i]);
      send_packet(A);
   }
   // for(int l=0;l<pL;l++) {
   //    vector<bool> A(31);
   //    for(int i=0;i<=30;i++) A[i]=pri[i][l];
   //    send_packet(A);
   // }
   int S=M.size();
   bitset<16> bS=S;
   vector<bool> A(31);
   for(int i=0;i<16;i++) A[pos[i]]=bS[i];
   send_packet(A);
   for(int i=0;i<S;i+=16) {
      for(int j=0;j<16;j++) A[pos[j]]=(i+j<S?M[i+j]:0);
      send_packet(A);
   }
}

vector<bool> receive_message(vector<vector<bool>> R) {
   int get_packet_pos=0;
   auto get_packet = [&]() {
      assert(get_packet_pos!=R.size());
      return R[get_packet_pos++];
   };
   mt19937 rnd(892348892);
   vector<bitset<pL>> pri(31);
   for(int i=0;i<=30;i++) pri[i]=rnd();
   vector<bool> C(31);
   // vector<bitset<pL>> get(31);
   // for(int l=0;l<pL;l++) {
   //    vector<bool> A=get_packet();
   //    for(int i=0;i<=30;i++) get[i][l]=A[i];
   // }
   // for(int i=0;i<=30;i++) C[i]=!(get[i]==pri[i]);
   for(int i=0;i<=30;i++) {
      int cnt[2]{};
      auto A=get_packet();
      for(int j=0;j<=30;j++) ++cnt[A[j]];
      C[i]=(cnt[0]<cnt[1]);
   }
   vector<int> pos;
   for(int i=0;i<=30;i++) if(!C[i]) pos.emplace_back(i);
   assert(pos.size()==16);
   int S=0;
   auto A=get_packet();
   for(int i=0;i<16;i++) S|=A[pos[i]]<<i;
   vector<bool> M(S);
   for(int i=0;i<S;i+=16) {
      auto A=get_packet();
      for(int j=0;j<16;j++) if(i+j<S) M[i+j]=A[pos[j]];
   }
   return M;
}

详细

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 82ms
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: 104ms
memory: 3712kb

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: 91ms
memory: 3840kb

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: 108ms
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: 70ms
memory: 3712kb

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: 41ms
memory: 3712kb

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: 62ms
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: 19.314
Acceptable Answer

Test #8:

score: 19.314
Acceptable Answer
time: 228ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #9:

score: 19.314
Acceptable Answer
time: 161ms
memory: 3712kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #10:

score: 19.314
Acceptable Answer
time: 252ms
memory: 3712kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #11:

score: 19.314
Acceptable Answer
time: 251ms
memory: 3712kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #12:

score: 20.331
Acceptable Answer
time: 269ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2259

result:

points 0.2259

Test #13:

score: 19.314
Acceptable Answer
time: 185ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #14:

score: 19.314
Acceptable Answer
time: 138ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #15:

score: 19.314
Acceptable Answer
time: 201ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #16:

score: 19.314
Acceptable Answer
time: 163ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146

Test #17:

score: 90
Accepted
time: 73ms
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: 110ms
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: 123ms
memory: 3712kb

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: 143ms
memory: 3712kb

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: 177ms
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: 73.305
Acceptable Answer
time: 166ms
memory: 3712kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.8145

result:

points 0.8145

Test #23:

score: 53.883
Acceptable Answer
time: 201ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.5987

result:

points 0.5987

Test #24:

score: 39.609
Acceptable Answer
time: 212ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.4401

result:

points 0.4401

Test #25:

score: 27.666
Acceptable Answer
time: 225ms
memory: 3712kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.3074

result:

points 0.3074

Test #26:

score: 20.331
Acceptable Answer
time: 254ms
memory: 3712kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2259

result:

points 0.2259

Test #27:

score: 19.314
Acceptable Answer
time: 250ms
memory: 3840kb

Manager to Aisha


Aisha to Manager


Manager to Basma


Basma to Manager


Manager to Checker

0.2146

result:

points 0.2146