
EPI
文章平均质量分 56
H_Arbiter
这个作者很懒,什么都没留下…
展开
-
EPI 5.2 SWAP BITS
#include using namespace std;long long swap_bits(long long x, int i, int j) { if (((x >> i) & 1) != ((x >> j) & 1)) { x ^= (1LL << i) | (1LL << j); } return x;}int main(int a原创 2013-06-10 14:53:22 · 602 阅读 · 0 评论 -
EPI 5.1 COMPUTING PARITY
#include #include using namespace std;int parity1(unsigned long long n) { int p = 0; while (n) { p ^= (n & 1); n >>= 1; } return p;}int parity2(unsigned long lon原创 2013-06-10 14:28:53 · 762 阅读 · 0 评论 -
EPI 5.6 STRING AND INTEGER CONVERSIONS
#include #include #include #include #include using namespace std;string intToString(int x) { bool is_negative = false; if (x < 0) { is_negative = true; x = -x; }原创 2013-06-13 02:52:56 · 853 阅读 · 0 评论 -
EPI 5.8 SPREADSHEET COLUMN ENCODING
#include #include using namespace std;int ssDecodeColID(const string& col) { int x = 0; for (const char &c : col) { x = x * 26 + c - 'A' + 1; } return x;}string rand_str原创 2013-06-13 02:54:58 · 517 阅读 · 0 评论 -
EPI 5.4 CLOSEST INTEGERS WITH THE SAME WEIGHT
#include #include #include using namespace std;unsigned long long closest_int_same_bits(unsigned long long x) { for (int i = 0; i < 63; i++) { if (((x >> i) & 1) != ((x >> (i + 1)) &原创 2013-06-13 02:50:50 · 633 阅读 · 0 评论 -
EPI 5.5 THE POWER SET
#include #include using namespace std;template void generate_power_set(const vector& S) { for (int i = 1; i < (1 << S.size()); i++) { int x = i; for (int j = 0; x >> j; j++) {原创 2013-06-13 02:51:50 · 682 阅读 · 0 评论 -
5.7 BASE CONVERSION
#include #include #include using namespace std;string convert_base(const string& s, const int b1, const int b2) { bool neg = (s[0] == '-'); int x = 0; for (int i = neg; i < s.size();原创 2013-06-13 02:53:57 · 531 阅读 · 0 评论 -
EPI 5.3 BIT REVERSAL
#include #include using namespace std;long long swap_bits(long long x, int i, int j) { if (((x >> i) & 1) != ((x >> j) & 1)) { x ^= (1LL << i) | (1LL << j); } return x;}long原创 2013-06-11 11:02:42 · 679 阅读 · 0 评论