APCS-325
跳躍二分搜
快速冪
1
2
3
4
5
6
7
8
int f(int x, int y) {
int ret = 1;
for (; y; y >>= 1) {
if (y&1) ret *= x;
x *= x;
}
return ret;
}1
2
3
4
5
6
int f(int x, int y) {
if (!y) return 1;
if (y&1) return f(x, y-1) * x;
int k = f(x, y/2);
return k*k;
}互補團隊
1
2
3
4
m 為總共幾個元素
int k = (1 << m) - 1;
for (auto &c : string) now |= (1 << (c-'A')); 計算現在物件有幾項元素
另一項互補物件即為 now^k