51 lines
1.4 KiB
C#
51 lines
1.4 KiB
C#
namespace test {
|
|
|
|
public class T {
|
|
static ulong[] values = {
|
|
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048,
|
|
4096, 8192, 16384, 32768, 65536, 131072,
|
|
262144, 524288, 1048576, 2097152, 4194304, 8388608,
|
|
16777216, 33554432, 67108864, 134217728, 268435456,
|
|
536870912, 1073741824, 2147483648, 4294967296,
|
|
8589934592, 17179869184, 34359738368, 68719476736,
|
|
137438953472, 274877906944, 549755813888, 1099511627776,
|
|
2199023255552, 4398046511104, 8796093022208,
|
|
17592186044416, 35184372088832, 70368744177664,
|
|
140737488355328, 281474976710656, 562949953421312,
|
|
1125899906842624, 2251799813685248, 4503599627370496,
|
|
9007199254740992, 18014398509481984, 36028797018963968,
|
|
72057594037927936, 144115188075855872, 288230376151711744,
|
|
576460752303423488, 1152921504606846976,
|
|
2305843009213693952, 4611686018427387904,
|
|
9223372036854775808
|
|
};
|
|
public static int Main() {
|
|
int i;
|
|
ulong val = 1;
|
|
ulong val17 = 131072;
|
|
ulong val33 = 8589934592;
|
|
ulong val39 = 549755813888;
|
|
ulong val47 = 140737488355328;
|
|
ulong val55 = 36028797018963968;
|
|
|
|
for (i = 0; i < values.Length; ++i) {
|
|
if (val != values [i])
|
|
return i+1;
|
|
val *= 2;
|
|
}
|
|
if (val33 != values [33])
|
|
return 1;
|
|
if (val39 != values [39])
|
|
return 2;
|
|
if (val47 != values [47])
|
|
return 3;
|
|
if (val55 != values [55])
|
|
return 4;
|
|
if (val17 != values [17])
|
|
return 5;
|
|
|
|
return 0;
|
|
}
|
|
}
|
|
}
|