Submission #1672688


Source Code Expand

#include "bits/stdc++.h"
#define rep(i,n) for(int i=0;i<n;i++)
#define ALL(v) (v).begin(),(v).end()
typedef long long LL;
const LL MOD = 1000000007LL;
using namespace std;
int a[2000];
LL dp1[2001][2001];
LL dp2[2001][2001];
int main() {
	int N, M, Q;
	cin >> N >> M >> Q;
	rep(i, N) {
		cin >> a[i];
	}
	rep(i, N + 1) {
		dp1[i][0] = 1;
	}
	rep(i, N) {
		for (int j = 1; j <= M; j++) {
			dp1[i + 1][j] = (dp1[i + 1][j - 1] + dp1[i][j]) % MOD;
			if (j - a[i] - 1 >= 0) dp1[i + 1][j] = (dp1[i + 1][j] - dp1[i][j - 1 - a[i]] + MOD) % MOD;
		}
	}
	rep(i, N) {
		for (int j = 0; j <= M; j++) {
			dp2[i][j] = dp1[N][j];
			if (j > 0) dp2[i][j] = (dp2[i][j] - dp1[N][j - 1] + MOD) % MOD;
			if (j - 1 - a[i] >= 0) (dp2[i][j] += dp2[i][j - 1 - a[i]]) %= MOD;
		}
	}
	rep(i, Q) {
		int k, x;
		cin >> k >> x;
		k--;
		cout << dp2[k][M - x] << endl;
	}
}

Submission Info

Submission Time
Task D - 注文の多い高橋商店
User Div9851
Language C++14 (GCC 5.4.1)
Score 100
Code Size 885 Byte
Status AC
Exec Time 1159 ms
Memory 67584 KB

Judge Result

Set Name Sample Subtask1 Subtask2 Subtask3 Subtask4
Score / Max Score 0 / 0 10 / 10 20 / 20 50 / 50 20 / 20
Status
AC × 2
AC × 10
AC × 13
AC × 13
AC × 23
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
Subtask1 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt
Subtask2 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt
Subtask3 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt
Subtask4 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt, subtask4_01.txt, subtask4_02.txt, subtask4_03.txt, subtask4_04.txt, subtask4_05.txt, subtask4_06.txt, subtask4_07.txt
Case Name Status Exec Time Memory
sample_01.txt AC 2 ms 2304 KB
sample_02.txt AC 2 ms 2304 KB
subtask1_01.txt AC 2 ms 2304 KB
subtask1_02.txt AC 2 ms 2304 KB
subtask1_03.txt AC 2 ms 2304 KB
subtask1_04.txt AC 2 ms 2560 KB
subtask1_05.txt AC 2 ms 4864 KB
subtask1_06.txt AC 2 ms 4864 KB
subtask1_07.txt AC 2 ms 4864 KB
subtask1_08.txt AC 2 ms 4864 KB
subtask2_01.txt AC 108 ms 3200 KB
subtask2_02.txt AC 205 ms 5760 KB
subtask2_03.txt AC 202 ms 5632 KB
subtask3_01.txt AC 31 ms 33024 KB
subtask3_02.txt AC 62 ms 62848 KB
subtask3_03.txt AC 50 ms 62848 KB
subtask4_01.txt AC 996 ms 53632 KB
subtask4_02.txt AC 1152 ms 67584 KB
subtask4_03.txt AC 1034 ms 62208 KB
subtask4_04.txt AC 993 ms 3328 KB
subtask4_05.txt AC 1159 ms 67584 KB
subtask4_06.txt AC 1087 ms 63744 KB
subtask4_07.txt AC 1138 ms 67328 KB