CSUSTOJ squares(数学/打表王)

题目链接
CSUSTOJ squares(数学/打表王)
大概意思是说求N*M区域内所有正方形的个数%mod
emmm 不知大咋推,然后手撸了一个表,发现 n=m 以后是成定值增加答案的 ,我们记定制为Q[]
而且对于 n * n 的规模与 (n-1) *(n-1) 的规模 第推柿子为F【i】=F【i-1】+Q[i]+Q[i-1]
而Q【】的关系则是与前2项有关 = = 反正打表yyds

#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define int long long
#define mp make_pair
#define fi first
#define se second


ll fp[1111111];
ll now[1111111];
ll mod=1e9+7;
signed main(){

    fp[1]=1;
    fp[2]=4;
    now[1]=1;
    now[2]=6;
    for(int i=3;i<=1000010;i++){

     fp[i]=((i*i%mod)+fp[i-2])%mod;  // ixiang
     now[i]=(now[i-1]+fp[i]+fp[i-1]) %mod;

    }

    ll n,m;
    scanf("%lld%lld",&n,&m);
   if(m<n){
    swap(n,m);
   }
    printf("%lld\n",(now[n]%mod+(m-n)%mod*fp[n]%mod)%mod);


}
上一篇:数据结构——C语言版 图书管理系统(简陋版)


下一篇:理解查全率(precision)与查准率(recall)