#include <cstdio>
#define BITSPERWORD 32
#define SHIFT 5
#define MASK 0x1F
#define N 10000000
int a[1 + N/BITSPERWORD];
void set(int i)
{
a[i >> SHIFT] |= (1<<(i & MASK));
}
void clr(int i)
{
a[i >> SHIFT] &= ~(1<<(i & MASK));
}
int test(int i)
{
return a[i >> SHIFT] & (1<<(i & MASK));
}
int main(void)
{
int i;
for (i = 0; i < N; i++)
{
clr(i);
}
//while (scanf("%d", &i) != EOF) {
// set(i);
//}
for (int j = 0; j < 3; j++)
{ //供简单的正确性测试
scanf("%d", &i); //注意,输入的数不能重复
set(i); //否则当只输入一次
}
for (i = 0; i < N; i++)
{
if (test(i))
printf("%d/n", i);
}
return 0;
}
估计同基数排序原理