QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#562871 | #9237. Message | sz051 | Compile Error | / | / | C++14 | 1.6kb | 2024-09-13 22:03:51 | 2024-09-13 22:03:52 |
Judging History
This is the latest submission verdict.
- [2024-09-13 22:03:52]
- Judged
- Verdict: Compile Error
- Time: 0ms
- Memory: 0kb
- [2024-09-13 22:03:51]
- Submitted
answer
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
#include <bitset>
#include <map>
#include <cassert>
#include <queue>
#define int long long
using namespace std;
vector<bool> send_packet(vector<bool> A);
int stat[40];
void send_message(vector<bool> M,vector<bool> C){
M.push_back(1);
while(M.size()!=1025){
M.push_back(0);
}
int lst=-1;
for(int i=0;i<31;i++){
if(C[i]){
stat[i]=lst;
lst=i;
}
}
vector<bool> val[66];
for(int i=0;i<66;i++){
val[i]=vector<bool>(31,0);
}
int pos=0;
for(int i=0;i<31;i++){
if(C[i]){
for(int j=0;j<66;j++){
int diff=i-((stat[i]==-1)?lst-31:stat[i])-1;
if(j==diff){
val[j][i]=1;
}else if(j>diff){
val[j][i]=M[pos++];
}
}
}
}
for(int i=0;i<66;i++){
send_packet(val[i]);
}
}
vector<bool> receive_message(vector<vector<bool> > R){
int nxt[40];
for(int i=0;i<31;i++){
for(int j=0;j<66;j++){
if(R[j][i]){
nxt[j]=(i-j+30)%31;
}
}
}
vector<bool> res;
for(int i=0;i<31;i++){
int cur=nxt[i],siz=1;
while(cur!=i){
siz++;
cur=nxt[cur];
}
if(siz==16){
vector<int> cont;
cont.push_back(i);
while(1){
if(nxt[cont.back()]==i){
break;
}
cont.push_back(nxt[cont.back()]);
}
sort(cont.begin(),cont.end());
for(int j:cont){
bool flg=0;
for(int k=0;k<66;k++){
if(flg){
res.push_back(R[k][j]);
}
flg|=R[k][j];
}
}
break;
}
}
while(!res.back()){
res.pop_back();
}
res.pop_back();
return res;
}
Details
stub.cpp: In function ‘int {anonymous}::sz(const C&)’: stub.cpp:27:52: error: ‘size’ is not a member of ‘std’; did you mean ‘size_t’? 27 | template<class C> int sz(const C& c) { return std::size(c); } | ^~~~ | size_t stub.cpp: In function ‘void {anonymous}::write_int_array(const int*, int)’: stub.cpp:70:13: warning: init-statement in selection statements only available with ‘-std=c++17’ or ‘-std=gnu++17’ 70 | if (int ret = fwrite(arr, sizeof(int), len, fout); len != ret) { | ^~~ stub.cpp: In function ‘void {anonymous}::read_int_array(int*, int)’: stub.cpp:105:13: warning: init-statement in selection statements only available with ‘-std=c++17’ or ‘-std=gnu++17’ 105 | if (int ret = fread(arr, sizeof(int), len, fin); len != ret) { | ^~~