Time:2016.08.18
Author:xiaoyimi
转载注明出处谢谢


传送门
思路:
真是太神了
我要能写出来一半,我就……
希望明年的自己能独立做出来
大犇博客
代码:

#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#define LL long long
#define mo 1000000007
using namespace std;
int d,w;
int p[1005],a[1005];
LL f[105][105],ans[105],h[105];
LL qr(LL x,LL y)
{LL t=1;for (x%=mo;y;y>>=1,x=x*x%mo)if (y&1) t=t*x%mo;return t;
}
void gauss(int n)
{LL p;for (int i=1;i<=n;++i){int t=i;for (int j=i+1;j<=n;++j)if (f[t][i]<f[j][i]) t=j;if (t!=i)for (int j=i;j<=n+1;++j)swap(f[t][j],f[i][j]);for (int j=i+1;j<=n;++j){p=f[j][i]*qr(f[i][i],mo-2)%mo;for (int k=i+1;k<=n+1;++k)f[j][k]=(f[j][k]-p*f[i][k]%mo)%mo;}}for (int i=n;i;--i){p=0;for (int j=i+1;j<=n;++j) p=(p+ans[j]*f[i][j])%mo;ans[i]=(f[i][n+1]-p)*qr(f[i][i],mo-2)%mo;ans[i]=(ans[i]+mo)%mo; }
}
main()
{scanf("%d%d",&d,&w);for (int i=1;i<=w;++i)scanf("%d%d",p+i,a+i);for (int i=1;i<=d+2;++i){int t=1;for (int j=1;j<=d+2;++j)f[i][j]=t,t=(LL)t*i%mo;for (int j=1;j<=i;++j)f[i][d+3]=(f[i][d+3]+qr(j,d))%mo;}gauss(d+2);for (int i=0;i<=d+1;++i){h[i]=ans[i+1];for (int j=1;j<=w;++j){h[i]=h[i]*qr(p[j],(LL)a[j]*i)%mo;if (d-i>=0)h[i]=h[i]*(1-qr(p[j],d-i))%mo;elseh[i]=h[i]*(1-qr(qr(p[j],i-d),mo-2))%mo;}}for (int i=1;i<=d+1;++i)h[0]=(h[0]+h[i])%mo;printf("%lld\n",(h[0]+mo)%mo);
}

【BZOJ3601】一个人的数论,莫比乌斯反演+高斯消元相关推荐

  1. 【bzoj3601】一个人的数论 莫比乌斯反演+莫比乌斯函数性质+高斯消元

    Description Sol 这题好难啊QAQ 反正不看题解我对自然数幂求和那里是一点思路都没有qwq 先推出一个可做一点的式子: \(f(n)=\sum_{k=1}^{n}[(n,k)=1]k^d ...

  2. 【数论+莫比乌斯反演】Exclusive Multiplication | gym103688E

    [数论+莫比乌斯反演]Exclusive Multiplication | gym103688 前言 题意 思路 代码 前言 [ f ( x ) ] [f(x)] [f(x)] 表示艾弗森括号,若 f ...

  3. 第三十四章 数论——高斯消元解线性方程组

    第三十四章 数论--高斯消元解线性方程组 一.高斯消元 1.线性方程组 2.高斯消元步骤 (1)数学知识铺垫 增广矩阵和阶梯矩阵 初等变换 (2)高斯消元步骤 二.代码模板 1.问题: 2.代码 一. ...

  4. 数论 - 高斯消元算法

    1.高斯消元 (1)定义 高斯消元法是求解线性方阵组的一种算法,它也可用来求矩阵的秩,以及求可逆方阵的逆矩阵.它通过逐步消除未知数来将原始线性系统转化为另一个更简单的等价的系统.它的实质是通过初等行变 ...

  5. Rocksdb Ribbon Filter : 结合 XOR-filter 以及 高斯消元算法 实现的 高效filter

    文章目录 前言 XOR-filter 实现原理 xor filter 的构造原理 xor filter 构造总结 XOR-filter 和 ADD-filter对比 XOR-filter 在计算上的优 ...

  6. poj 1681 Painter#39;s Problem(高斯消元)

    http://poj.org/problem? id=1681 求最少经过的步数使得输入的矩阵全变为y. 思路:高斯消元求出自由变元.然后枚举自由变元,求出最优值. 注意依据自由变元求其它解及求最优值 ...

  7. AC自动机 + 概率dp + 高斯消元 --- HDU 5955 or 2016年沈阳icpc H [AC自动机 + 概率dp + 高斯消元]详解

    题目链接 题目大意: 就是有NNN个人,每个人都会猜一个长度为LLL的只包含{1,2,3,4,5,6}\{1,2,3,4,5,6\}{1,2,3,4,5,6}的序列,现在裁判开始投掷骰子,并且把每次的 ...

  8. ICPC 2005 hangzhou Generator (UVA1358)KMP + 期望DP / 高斯消元

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Generator Weblink https://www.luogu.com.cn/problem/ ...

  9. 2020 ACM / ICPC 济南 A Matrix Equation (高斯消元、乘法原理)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 给你定义两种 010101 矩阵上的运算: Xi,j×Yi,j=(∑k=1NXi,kYk,j ...

最新文章

  1. ELK三件套安装实践之路(1)
  2. [云炬创业管理笔记]第五章打磨最有效的商业模式测试4
  3. ELK学习3_使用redis+logstash+elasticsearch+kibana快速搭建日志平台
  4. #1097 : 最小生成树一·Prim算法
  5. 轻量NuGet服务—BaGet
  6. 机器学习笔记(七)——决策树模型
  7. Atom Latex Settings
  8. HBase之HRegionServer处理put请求
  9. Iframe和Frame中实现cookie跨域的方法(转载)
  10. mybatis13--2级缓存
  11. CDMA HERT平台分布式基站 DBS3900 CDMA
  12. 这是我见过最接地气的PCB设计指南了!
  13. 鸿蒙系统概述(HarmonyOS)学习这一篇就够了!
  14. 疫情推动“宅经济”成为当前重要经济发展模式
  15. 《Thinking in Java》Fourth Edition中文版笔记
  16. ORACLE中的各种SCN查询
  17. bilibili管理课程笔记——中层管理者的四种领导角色
  18. 因为无聊 自己写的一个 TXT小说阅读器 PC版(winfrom)
  19. 手机四巨头,卷进元宇宙
  20. 最长回文子串(C++)

热门文章

  1. 野生前端的数据结构练习(1)——栈
  2. mysql 有哪些子句_mysql 查询子句
  3. Spark之SparkSQL理论篇
  4. 统计学习方法第二版知识点合集 - 自用笔记
  5. leetcode59题:滑动窗口的最大值(用双端队列实现)
  6. mysql数字连接,MySQL - 已达到数字连接
  7. php限制注册频率,php如何限制某个ip提交的次数
  8. lbp特征提取算法 知乎_图像-LBP特征描述算子-人脸检测
  9. 无序数组求第k大的数 python_【python刷题】寻找数组中第K大/小的数
  10. angular 注入器配置_注入器和发布库–AngularJS学习笔记(三)