一、今日知识点总结:
二、今日做题记录:
1. 求1+2+…+n
int sumNums(int n){
return n * (n + 1) / 2;
}
2. 2 的幂
bool isPowerOfTwo(int n){
int i;
unsigned int k = 1;
if(n <= 0) {
return false;
}
if(n == 1) {
return true;
}
for(i = 1; i <= 31; ++i) {
k *= 2;
if(k == n) {
return true;
}
}
return false;
}
3. 3 的幂
bool isPowerOfThree(int n){
int i;
unsigned int k = 1;
if(n <= 0) {
return false;
}
if(n == 1) {
return true;
}
for(i = 1; i <= 20; ++i) {
k *= 3;
if(k == n) {
return true;
}
}
return false;
}
4. 4 的幂
bool isPowerOfFour(int n){
int i;
unsigned int k = 1;
if(n <= 0) {
return false;
}
if(n == 1) {
return true;
}
for(i = 1; i <= 15; ++i) {
k *= 4;
if(k == n) {
return true;
}
}
return false;
}
5. n 的第 k 个因子
int kthFactor(int n, int k){
int i;
int cnt = 0;
for(i = 1; i <= n; ++i) {
if(n % i == 0) {
++cnt;
if(cnt == k) {
return i;
}
}
}
return -1;
}