Submission #1311908

#TimeUsernameProblemLanguageResultExecution timeMemory
1311908eri16메시지 (IOI24_message)C++20
10 / 100
221 ms804 KiB
#include <bits/stdc++.h> #include "message.h" using namespace std; using ll = long long; void send_message(vector<bool> M, vector<bool> C){ ll n = C.size(); vector <bool> truth(31,true); vector <bool> lie(31,false); vector <ll> index; for (int i=0; i<31; i++){ if (C[i]){send_packet(lie);} else{send_packet(truth);index.push_back(i);} } for (int i=0; i<M.size(); i=i+8){ vector <bool> ans = lie; for (int j=0; j<16 && i+j/2<M.size(); j=j+2){ if (M[i+j/2]){ ans[index[j]]=true; } ans[index[j+1]]=true; } send_packet(ans); } } vector<bool> receive_message(vector<vector<bool>> R){ vector <ll> idx; for (int i=0; i<31; i++){ ll sm = 0; for (int j=0; j<31; j++){ if (R[i][j]){sm++;} } if (sm>=16){idx.push_back(i);} } vector <bool> ans; for (int i=31; i<R.size(); i++){ for (int j=0; j<16; j=j+2){ if (R[i][idx[j+1]]){ if (R[i][idx[j]]){ ans.push_back(true); } else{ans.push_back(false);} } } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...