제출 #3518

#제출 시각아이디문제언어결과실행 시간메모리
3518cki86201Inherited disease (kriii1_I)C++98
1 / 1
0 ms1088 KiB
#include<stdio.h>
#include<algorithm>
#include<string.h>
#include<vector>
#include<math.h>
#include<stdlib.h>
using namespace std;

int n,inp[110];
long long dp[110][2],f[110]={0,1};
const int M = 1e9+7;

int main()
{
	scanf("%d",&n);
	int p,i;
	for(i=2;i<=n;i++){f[i]=i*f[i-1];f[i]%=M;}
	for(i=1;i<=n;i++)scanf("%d",inp+i);
	dp[0][1]=1;
	long long s=0;
	for(i=1;i<=n;i++){
		dp[i][1]=(dp[i-1][1]-1)*i+inp[i];
		dp[i][0]=dp[i][1]+s;
		dp[i][0]%=M;
		dp[i][1]%=M;
		s+=f[i];
		s%=M;
		printf("%d\n",dp[i][0]);
	}
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...