CFG - 鸡哥的雕像 前缀积后缀积
Posted karshey
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CFG - 鸡哥的雕像 前缀积后缀积相关的知识,希望对你有一定的参考价值。
原题
输入1:
3
2021 7 11
输出1:
77 22231 14147
输入2:
4
114 514 1919 810
输出2:
798956460 177200460 47462760 112445724
看完代码就懂了。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define fir(i,a,n) for(int i=a;i<=n;i++)
const int N=1e5+10;
int n;
ll a[N];
ll aa[N],bb[N];
const int MOD=998244353;
int main()
cin>>n;
fir(i,1,n) cin>>a[i];
fir(i,1,n)
if(i==1) aa[i]=a[i];
else aa[i]=aa[i-1]%MOD*a[i]%MOD;
for(int i=n;i>=1;i--)
if(i==n) bb[i]=a[i];
else bb[i]=bb[i+1]%MOD*a[i]%MOD;
fir(i,1,n)
if(i==1) cout<<bb[2];
else if(i==n) cout<<" "<<aa[n-1];
else cout<<" "<<aa[i-1]%MOD*bb[i+1]%MOD;
return 0;
以上是关于CFG - 鸡哥的雕像 前缀积后缀积的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode#152-乘积最大子数组-前缀和扩展到前缀积