Submission #3459446


Source Code Expand

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cassert>
#define ll long long
#define MOD 1000000007
using namespace std;
inline int read(){
	int re=0,flag=1;char ch=getchar();
	while(!isdigit(ch)){
		if(ch=='-') flag=-1;
		ch=getchar();
	}
	while(isdigit(ch)) re=(re<<1)+(re<<3)+ch-'0',ch=getchar();
	return re*flag;
}
int n;
ll dp[2000010],sum[2000010];
void add(ll &a,ll b){
	a+=b;
	if(a>=MOD) a-=MOD;
}
int main(){
	n=read();
	int i;
	dp[1]=1;
	for(i=1;i<=n;i++){
		if(i>=3) add(dp[i],sum[i-3]);
		add(dp[i],dp[i-1]);
		(sum[i]=sum[i-1]+dp[i])%=MOD;
	}
	ll ans=0;
	for(i=1;i<n;i++) add(ans,dp[i]*(n-1)%MOD*(n-1)%MOD);
	for(i=1;i<n-1;i++) add(ans,dp[i]*(i+1)%MOD);
	add(ans,(dp[n]*n+dp[n-1]*(n-1))%MOD);
	cout<<ans<<'\n';
}

Submission Info

Submission Time
Task F - Infinite Sequence
User dedicatus545
Language C++14 (GCC 5.4.1)
Score 1000
Code Size 798 Byte
Status AC
Exec Time 18 ms
Memory 18688 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 1000 / 1000
Status
AC × 2
AC × 22
Set Name Test Cases
Sample 0_000.txt, 0_001.txt
All 0_000.txt, 0_001.txt, max_1000000.txt, max_999745.txt, max_999880.txt, max_999999.txt, min_1.txt, rnd_14.txt, rnd_22.txt, rnd_25002.txt, rnd_2956.txt, rnd_3.txt, rnd_380467.txt, rnd_407774.txt, rnd_52228.txt, rnd_68.txt, rnd_804783.txt, rnd_85984.txt, rnd_894324.txt, rnd_93.txt, rnd_963981.txt, rnd_968416.txt
Case Name Status Exec Time Memory
0_000.txt AC 2 ms 2304 KB
0_001.txt AC 13 ms 14592 KB
max_1000000.txt AC 18 ms 18688 KB
max_999745.txt AC 18 ms 18688 KB
max_999880.txt AC 18 ms 18688 KB
max_999999.txt AC 18 ms 18688 KB
min_1.txt AC 2 ms 2304 KB
rnd_14.txt AC 2 ms 2304 KB
rnd_22.txt AC 2 ms 2304 KB
rnd_25002.txt AC 2 ms 2432 KB
rnd_2956.txt AC 2 ms 2304 KB
rnd_3.txt AC 2 ms 2304 KB
rnd_380467.txt AC 8 ms 10496 KB
rnd_407774.txt AC 9 ms 10496 KB
rnd_52228.txt AC 2 ms 2688 KB
rnd_68.txt AC 2 ms 2304 KB
rnd_804783.txt AC 15 ms 16640 KB
rnd_85984.txt AC 3 ms 2944 KB
rnd_894324.txt AC 17 ms 18688 KB
rnd_93.txt AC 2 ms 2304 KB
rnd_963981.txt AC 18 ms 18688 KB
rnd_968416.txt AC 18 ms 18688 KB