Submission #1297890

#TimeUsernameProblemLanguageResultExecution timeMemory
1297890scalifrastico_098Message (IOI24_message)C++20
0 / 100
199 ms800 KiB
#include "message.h" #include <bits/stdc++.h> using namespace std; void send_message(vector<bool> s, vector<bool> c) { int ij=s.size(), ik=31; vector<bool> k(ij), l; for(int i=0; i<31; i++) { vector<bool> v(31); for(int j=0; j<31; j++)v[i]=c[i]; send_packet(v); } vector<int> mi; for(int i=0; i<31; i++){if(c[i]==0)mi.push_back(i);} vector<bool> ne; int sz=s.size()+4, r1=16-(sz%16); r1%=16; for(int i=0; i<4; i++){ne.push_back((r1&1)); r1>>=1;} for(int i=0; i<s.size(); i++)ne.push_back(s[i]); r1=16-(sz%16); r1%=16; for(int i =0; i<r1; i++) { ne.push_back(0); } int to=ne.size()/16, pr=0; for(int i=0; i<to; i++) { vector<bool> ts(31, 0); for(int j=0; j<16; j++)ts[mi[j]]=ne[i*16+j]; send_packet(ts); } } vector<bool> receive_message(vector<vector<bool>> r) { vector<bool> h; int ij=r.size(), i=0; vector<bool> u=r[0], v=r[1]; vector<int> k; for(int i=0; i<31&&i<ij; i++) { vector<bool> v=r[i]; sort(v.begin(), v.end()); if(v[15]==0)k.push_back(i); } vector<bool> a; for(int i=31; i<ij; i++) { for(auto x: k){a.push_back(r[i][x]);} } if(a.size()<4) return h; int y=0;for(int i=3; i>=0; i--){y<<=1; if(a[i])y+=1;} int ty=a.size(); for(int i=4; i<ty-y; i++)h.push_back(a[i]); return h; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...