# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
900304 | 2024-01-08T05:18:47 Z | Muhammad_Aneeq | 앵무새 (IOI11_parrots) | C++17 | 0 ms | 0 KB |
#include <cmath> #include <vector> #include <string> #include "parrotslib.h" using namespace std; void decode(int N, int L, int X[]) { vector<int>ans(N,0); for (int i=0;i<L;i++) { if (X[i]<8) { for (auto& j:ans) j+=(1<<(X[i])); continue; } ans[(X[i]/8)-1]+=(1<<(X[i]%8)); } for (auto i:ans) output(i); } void encode(int N, int M[]) { bool vis[8]={}; for (int j=0;j<8;j++) { bool w=1; for (int i=0;i<N;i++) { if ((M[i]&(1<<j))==0) w=0; } if (w) { vis[j]=1; send(j); } } for (int i=0;i<N;i++) { for (int j=0;j<8;j++) { if (vis[j]) continue; if ((M[i]&(1<<j))) send(i*8+j+8); } } }