#include <bits/stdc++.h>
#define f first
#define s second
using namespace std;
typedef pair<int, int> pii;
int g = 0, Nmax = 0;
vector<int> v;
void gerar()
{
if(g) return;
for(int val = 1; val < (1<<12); val ++)
{
int l = 0, r = 0;
for(int bit = 0; bit < 12; bit ++)
{
if( (val & (1<<bit)) && bit >= 6) l++;
if( !(val & (1<<bit)) && bit < 6) r++;
}
if(l == r) v.push_back(val);
}
g = true;
}
int encode (int n, int x, int y)
{
gerar();
x = v[x], y = v[y];
for(int bit = 0; bit < 12; bit ++)
{
if( (x & (1<<bit)) && !(y & (1<<bit))) return bit + 1;
}
}
#include <bits/stdc++.h>
#define f first
#define s second
using namespace std;
typedef pair<int, int> pii;
int g = 0, Nmax = 0;
vector<int> v;
void gerar()
{
if(g) return;
for(int val = 1; val < (1<<12); val ++)
{
int l = 0, r = 0;
for(int bit = 0; bit < 12; bit ++)
{
if( (val & (1<<bit)) && bit >= 6) l++;
if( !(val & (1<<bit)) && bit < 6) r++;
}
if(l == r) v.push_back(val);
}
g = true;
}
int decode (int n, int q, int h)
{
gerar();
h--;
int val = v[q];
if(val & (1<<h)) return 1;
return 0;
}
Compilation message
encoder.cpp: In function 'int encode(int, int, int)':
encoder.cpp:42:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1682 ms |
78832 KB |
Output is correct - maxh = 12 |
2 |
Correct |
1685 ms |
79240 KB |
Output is correct - maxh = 12 |