您现在的位置是:主页 > news > 做动漫网站的素材/东莞关键字排名优化

做动漫网站的素材/东莞关键字排名优化

admin2025/6/4 17:59:17news

简介做动漫网站的素材,东莞关键字排名优化,网站如何备案 流程,做一个简单网站多少钱因为年历是400年一个循环节的,所以递推出一年的情况,然后递推处理出一个循环节的情况。对于询问,求一个类似前缀和的东西就好了。 跑出来和比样例小一,把A和B加一以后交后AC... 写得时候注意变量的定义。。。不然WA到哭。。。我是…

做动漫网站的素材,东莞关键字排名优化,网站如何备案 流程,做一个简单网站多少钱因为年历是400年一个循环节的,所以递推出一年的情况,然后递推处理出一个循环节的情况。对于询问,求一个类似前缀和的东西就好了。 跑出来和比样例小一,把A和B加一以后交后AC... 写得时候注意变量的定义。。。不然WA到哭。。。我是…

因为年历是400年一个循环节的,所以递推出一年的情况,然后递推处理出一个循环节的情况。对于询问,求一个类似前缀和的东西就好了。

跑出来和比样例小一,把A和B加一以后交后AC...

写得时候注意变量的定义。。。不然WA到哭。。。我是以6代表星期5的,1900年是第一年,所以B,A减去1900之前要加一。

#include<cstdio>
#include<cstring>bool isLeapYear(int y)
{if(y%100){return !(y&3);}else {return !(y%400);}
}// 1    3     5     7   8    10    12
int days[] = {-1,31,28,31,30,31,30,31,31,30,31,30,31};
//6 7 1 2 3 4 5
int cnt1[7];//1~2月
int cnt2[7];//2月以后
int cnt[7];//1900
void firstYear()
{int v = 0;for(int m = 1; m <= 2; m++) {cnt1[v]++;v = (v+days[m])%7;}for(int m = 3; m <= 12; m++) {cnt2[v]++;v = (v+days[m])%7;}for(int i = 0; i < 7; i++) {cnt[i] = cnt1[i]+cnt2[i];}
}int cnt400[401][13];
int cntCur[7];void circle()
{firstYear();int mov = 0;int i = 1;//1900for(int y = 1900; y < 2300; y++,i++){//1,1 +mov1 1,2 2->last 1memset(cntCur,0,sizeof(cntCur));if(isLeapYear(y)) {for(int i = 0; i < 7; i++)//2月以前不受影响cntCur[i] += cnt1[(i-mov+7)%7];mov = (mov + 1)%7;//相对上一年for(int i = 0; i < 7; i++)cntCur[i] += cnt2[(i-mov+7)%7];}else {for(int i = 0; i < 7; i++)cntCur[i] += cnt[(i-mov+7)%7];}mov = (mov + 1)%7;//365%7 =1for(int j = 0; j < 13; j++){cnt400[i][j] = cnt400[i-1][j];}cnt400[i][cntCur[6]]++;}
}int ans[13];
//#define local
int main()
{
#ifdef localfreopen("data.txt","w",stdout);
#endif // localint A,B;circle();scanf("%d%d",&A,&B);B++;A++;int a = (A-1-1900)%400;int na = (A-1-1900)/400;int b = (B-1900)%400;int nb = (B-1900)/400;for(int i = 0; i < 13; i++){ans[i] += (nb-na)*cnt400[400][i] + cnt400[b][i] - cnt400[a][i];}for(int i = 0; i < 13; i++)printf("%d: %d\n",i,ans[i]);return 0;
}

 

转载于:https://www.cnblogs.com/jerryRey/p/4719747.html