当前位置: 首页 > news >正文

电商网站建设源码漳州做网站

电商网站建设源码,漳州做网站,高权重网站做js代码跳转,装饰设计说明求Fn mod 1e97 Input 第一行是一个t代表有t组数据 接下来有t行每行有6个整数A,B,C,D,P,n 1<t<10 0<A,B,C,D<1e9 1<p,n<1e9 Output 输出一个答案Fn对1e97取余 Sample Input 2 1 1 1 1 1 5 1 1 1 1 10 4 Sample Output 9 10 思路&#xff1a; p/n上…

求Fn mod 1e9+7

Input

第一行是一个t代表有t组数据
接下来有t行每行有6个整数A,B,C,D,P,n
1<=t<=10
0<=A,B,C,D<=1e9
1<=p,n<=1e9

Output

输出一个答案Fn对1e9+7取余

Sample Input

2 
1 1 1 1 1 5
1 1 1 1 10 4

Sample Output

9
10

思路:

p/n上取整,一直会随着n的变化而变化,所以我们可以分一段一段的计算;

p/n上取整=(p+n-1)/n=(p-1)/n+1;

有个数学小知识:求∑(1,n)⌊k/i⌋∗i-CSDN博客

当我们知道一段区间的下界i,我们可以利用k/(k/i),求出其上界;

当我们知道一段区间的下界时,可以计算出它的上界,快速幂连乘即可。

代码:

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<string>
#include<cstring>
#include<cmath>
#include<ctime>
#include<algorithm>
#include<utility>
#include<stack>
#include<queue>
#include<vector>
#include<set>
#include<math.h>
#include<unordered_map>
#include<map>
using namespace std;
typedef long long LL;
typedef unsigned long long ull;
#define per(i,a,b) for(int i=a;i<=b;i++)
#define ber(i,a,b) for(int i=a;i>=b;i--)
const int N = 1e5;
const long long mod = 1e9+7;
const double eps = 1e-2;
typedef struct data
{
    LL m[3][3];

}J;
J Q,E;
LL a, b, c, d, p, n;
J now, e,ans;
LL f[3],tmp[3];
void into()
{
      Q= { d,c,1,
           1,0,0,
           0,0,1 };
      E = { 1,0,0,
         0,1,0,
         0,0,1 };
 }
J quickfu(J a, J b)
{
    J c;
    for (int i = 0; i <= 2; i++)
        for (int j = 0; j <= 2; j++)
        {
            c.m[i][j] = 0;
            for (int k = 0; k <= 2; k++)
                c.m[i][j] = (c.m[i][j] + a.m[i][k] * b.m[k][j] % mod) % mod;
            c.m[i][j] = (c.m[i][j] % mod + mod)%mod;
        }
    return c;
}
J quick(J a, LL b)
{
    J ans = e;
    while (b)
    {
        if (b & 1)
            ans = quickfu(ans , a);
        b >>= 1;
        a = quickfu(a, a);
    }
    return ans;
}
int main()
{  
    int T;
    cin >> T;
    while (T--)
    {
        cin >> a >> b >> c >> d >> p >> n;
        into();
        now = Q;
        e = E;
        if (n == 1)
        {
            cout << a % mod << endl;
            continue;
        }
        if (n == 2)
        {
            cout << b % mod << endl;
            continue;
        }
        p -= 1;
        f[0] = b, f[1] = a;
        for (LL i = 3, j = 1; i <= n; i = j + 1)
        {
            f[2] = p / i + 1;
            LL x =p / i;
            if (x == 0)
                j = n;
            else
             j = min(n, p / x);
            ans = quick(Q, j - i+1);
            for (int l = 0; l <= 2; l++)
            {
                tmp[l] = 0;
                for (int w = 0; w <= 2; w++)
                    tmp[l] = (tmp[l] + ans.m[l][w] * f[w]) % mod;
            }
            for (int l = 0; l <= 2; l++)
                f[l] = tmp[l];
        }
        cout <<f[0]<< endl;
    }
    return 0;
}

http://www.yayakq.cn/news/906734/

相关文章:

  • 网站设计现状回忆网站模板
  • 模板网站如何建设WordPress显示加载时间
  • 如何给局域网 做网站做网站vs2012能不能做
  • asp网站搭建软件网站面试通知表格怎么做
  • 嘉兴网站建设技术开发wordpress欢迎页插件
  • 大学生如何建立网站国外html5网站源码
  • 免费建站系统有哪些山西网站建设公司排名
  • 做淘宝网站代理创业怎么做网站
  • 杭州化工网站建设.php的网站是怎么做的
  • 北京期刊网站建设外贸网络营销外包
  • 帮人建设网站属于增值电信业务吗产品设计招聘网站
  • 做试试彩网站人员龙岩建筑公司有哪些
  • 阿里云建设网站好不好销售管理系统的功能
  • 万江专业网站快速排名新渝网门户网
  • 网站更换内容建设摩托125图片大全
  • 东莞南城网站开发公司安卓开发软件
  • 网站建设 域名业务 邮箱建设部网站注册查询
  • 学校网站开发模式学校网站建设管理制度
  • 爱建站小程序特点深圳网站设计 制作元
  • 技术交流网站开发例子网站制作网址
  • 做网站赔了8万深圳品牌网站制作咨询电话
  • 东莞网站设计流程海西网站建设哪家好
  • 南昌网站seo哪家公司好安防行业网站建设方案
  • 网站备案各种问题汇总上海网站建设 app开发
  • 新网站如何做营销网站seo推广多少钱
  • 网站用什么框架做wordpress制作左侧边栏
  • 成都哪家网站建设做得好如何在社交网站上做视频推广
  • 套用别人产品图片做网站wordpress多语言配置文件
  • 做网站小图片分类安徽建设厅网站节能北备案
  • 怎么做弹幕网站网站集约化建设