判断闰年,闰年2月是29天
bool isleaf(int x){
return (x%400==0||(x%4==0&&x%100!=0));
}
计算从xx年xxxx日--xx年xx月xx日一共经历了多少天
int ey,em,ed;
bool isleaf(int x){
return (x%400==0||(x%4==0||x%100!=0));
}
int count(int y,int m,int d){
int ans=0;
int mon[13]={0,31,28,31,30,31,30,31,31,30,31,30,31);
while(1){
if(ey==y&&em==m&&ed==d) break;
d++;
if(isleaf(y)&&m==2){
if(d>mon[m]+1){
m++;
d=1;
}
}else{
if(d>mon[m]){
m++;
d=1;
}
}
if(m>12){
y++;
m=1;
}
ans++;
}
return ans;
}
最大公约数
int gcd(int a,int b){
return b==0?a:gcd(b,a%b);
}
最小公倍数
int lcm(int a,int b){
return a*b*gcd(a,b);
}
判断质数、素数
bool imprime(int n){
for(int i=2;i*i<=n;i++){
if(n%i==0) return false;
}
return true;
}