# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
973167 | 2024-05-01T15:00:56 Z | vjudge1 | Question (Grader is different from the original contest) (CEOI14_question_grader) | C | 0 ms | 0 KB |
#include <stdio.h> int set[925], iota; void init() { for (int i = 1; i < (1<<12); ++i) if(__builtin_popcount(i) == 6) set[++iota] = i; } int encode(int n,int x,int y) { if (!iota) init(); for(int i=0;i<12;++i) if((set[x]&(1<<i))&&!(set[y]&(1<<i))) return i+1; __builtin_trap(); } int decode (int n, int q, int h) { if (!iota) init(); return(set[q]>>(h-1))&1; }