loj #6485. LJJ 学二项式定理 单位根反演
新学的黑科技,感觉好nb ~
#include <bits/stdc++.h>
#define ll long long
#define setIO(s) freopen(s".in","r",stdin)
using namespace std;
const ll mod=998244353;
inline ll qpow(ll x,ll y)
{
    ll tmp=1;
    x=x%mod;
    y=(y%(mod-1)+mod-1)%(mod-1);
    for(;y;y>>=1,x=x*x%mod)    if(y&1)    tmp=tmp*x%mod;
    return tmp;
}
inline ll INV(int x) { return qpow(x,mod-2);  }
ll n;
int s,a[5];
ll F(ll i,ll x)
{
    ll re=qpow(x+s,n);
    return re*qpow(x,i-n)%mod;
}
int main()
{
    setIO("input");
    int i,j,T;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%lld%d",&n,&s);
        for(i=0;i<4;++i)    scanf("%d",&a[i]);
        int w=qpow(3,(mod-1)/4), inv=qpow(w,mod-2);
        int ans=0;
        for(i=0;i<=3;++i)   for(int k=0,t=1;k<=3;++k,t=1ll*t*inv%mod)
        ans=(ans+1ll*F(i,t)*a[i]%mod)%mod;
        ans=1ll*ans*qpow(4,mod-2)%mod;
        printf("%d\n",ans);
    }
    return 0;
}
loj #6485. LJJ 学二项式定理 单位根反演的更多相关文章
- loj 6485 LJJ学二项式定理 —— 单位根反演
		题目:https://loj.ac/problem/6485 先把 \( a_{i mod 4} \) 处理掉,其实就是 \( \sum\limits_{i=0}^{3} a_{i} \sum\lim ... 
- [LOJ 6485]LJJ学二项式定理(单位根反演)
		也许更好的阅读体验 \(\mathcal{Description}\) 原题链接 \(T\)组询问,每次给\(n,s,a_0,a_1,a_2,a_3\)求 \(\begin{aligned}\left ... 
- LOJ 6485 LJJ 学二项式定理——单位根反演
		题目:https://loj.ac/problem/6485 \( \sum\limits_{k=0}^{3}\sum\limits_{i=0}^{n}C_{n}^{i}s^{i}a_{k}[4|(i ... 
- loj#6485. LJJ 学二项式定理(单位根反演)
		题面 传送门 题解 首先你要知道一个叫做单位根反演的东西 \[{1\over k}\sum_{i=0}^{k-1}\omega^{in}_k=[k|n]\] 直接用等比数列求和就可以证明了 而且在模\ ... 
- LOJ #6485 LJJ 学二项式定理
		QwQ LOJ #6485 题意 求题面中那个算式 题解 墙上暴利 设$ f(x)=(sx+1)^n$ 假设求出了生成函数$ f$的各项系数显然可以算出答案 因为模$ 4$的缘故只要对于每个余数算出次 ... 
- loj #6485. LJJ 学二项式定理  (模板qwq)
		$ \color{#0066ff}{ 题目描述 }$ LJJ 学完了二项式定理,发现这太简单了,于是他将二项式定理等号右边的式子修改了一下,代入了一定的值,并算出了答案. 但人口算毕竟会失误,他请来了 ... 
- LOJ 6485 LJJ学多项式
		前言 蒟蒻代码惨遭卡常,根本跑不过 前置芝士--单位根反演 单位根有这样的性质: \[ \frac{1}{n}\sum_{i=0}^{n-1}\omega_{n}^{ki}=\left[n|k\rig ... 
- 【LOJ#6485】LJJ 学二项式定理(单位根反演)
		[LOJ#6485]LJJ 学二项式定理(单位根反演) 题面 LOJ 题解 显然对于\(a0,a1,a2,a3\)分开算答案. 这里以\(a0\)为例 \[\begin{aligned} Ans&am ... 
- LOJ6485  LJJ 学二项式定理 解题报告
		LJJ 学二项式定理 题意 \(T\)组数据,每组给定\(n,s,a_0,a_1,a_2,a_3\),求 \[ \sum_{i=0}^n \binom{n}{i}s^ia_{i\bmod 4} \] ... 
随机推荐
- Linux删除含有特殊符号文件名的文件
			1. 文件名含有特殊字符,直接使用 rm 可能删除不了,可以使用如下方法: 1) 使用 ls -i 查处该文件的 inode 号,假设为123 2) 使用find命令删除: rm `find . ... 
- ORACLE数据库实现自增的两种方式
			Mysql数据库因为其有自动+1,故一般我们不需要花费太多时间,直接用关键字auto_increment即可,但是Oracle不行,它没有自动增长机制.顾我们需要自己去实现.一般有两种方式,但是这两种 ... 
- Spark 系列(十三)—— Spark Streaming 与流处理
			一.流处理 1.1 静态数据处理 在流处理之前,数据通常存储在数据库,文件系统或其他形式的存储系统中.应用程序根据需要查询数据或计算数据.这就是传统的静态数据处理架构.Hadoop 采用 HDFS 进 ... 
- SQL Server修改表的模式schema
			use myDBgo create schema myschema --先建立go alter schema myschema transfer dbo.myTable --移动对象至建立的schem ... 
- 【Python】单例模式
			单例 class MusicPlayer(object): instance = None def __new__(cls, *args, **kwargs): if cls.instance is ... 
- oracle更改数据库字符集
			shutdown immediate; startup mount; alter system enable restricted session; alter system set job_queu ... 
- java操作redis(jedis)常用方法示例
			说明:redis命令和jedis方法名基本是一一对应的 Redis常用命令1 连接操作命令 ● quit:关闭连接(connection) ● auth:简单密码认证 ● help cmd: 查看cm ... 
- goroutine的使用与常见错误
			goroutine的使用时常见错误 goroutine是Golang 的核心之一,在使用时,一般都要配合channel一起使用. 在使用时,经常会遇到一些错误,包括: 不输出 输出与希望输出不一致 a ... 
- Springboot中自已测试
			签到的测试,需要传入日期,签到7天可获得更多的积分, 构造7天前的签到记录,重写签到方法,进行构造数据 import cn.com.acxiom.coty.api.ws.bean.dto.PointD ... 
- 关于Istio 1.1,你所不知道的细节
			本文整理自Istio社区成员Star在 Cloud Native Days China 2019 北京站的现场分享 第1则 主角 Istio Istio作为service mesh领域的明星项目,从2 ... 
