快速幂
n的11次方中11在二进制中表示为1011所以可以表示为
n(8+0+2+1)次方,二进制可以同过位运算&1判断尾数为不为0,如果为1则乘对应次方
#include<stdio.h>
int qm(int a,int k){
int res=1;
while(k){
if(k&1) res=(long long)res*a;
k>>=1;
a=(long long)a*a;
}
return res;
}
int main() {
......
return 0;
}
qsort函数
qsort包含在头文件#include<stdlib.h>中
qsort需要传4个参数qsort(排序数组地址,排序元素个数,每个元素长度,cmp函数)
#include<stdio.h>
#include<stdlib.h>
int cmp(const void* a,const void* b){
if(*(int*)a>*(int*)b)
return 1;
else return -1;
}
int main() {
int i,n=0;
scanf("%d",&n);
int a[n];
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
qsort(a,n,sizeof(int),cmp);
for(i=0;i<n;i++){
printf("%d",a[i]);
}
return 0;
}