답안 #135496

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
135496 2019-07-24T06:51:15 Z 임유진(#3251) A Huge Tower (CEOI10_tower) C++14
45 / 100
645 ms 262144 KB
#include <bits/stdc++.h>
using namespace std;

typedef long long lint;

const int MOD = 1e9 + 9;

int S[20];
lint dp[1 << 20][20];
int big[20];

int main() {
	ios::sync_with_stdio(0); cin.tie(0);
	int N, D;

	cin >> N >> D;
	for(int i = 0; i < N; i++) cin >> S[i];
	
	sort(S, S + N);
	big[N - 1] = N - 1;
	for(int i = N - 2; i >= 0; i--) for(big[i] = big[i + 1]; S[big[i]] > S[i] + D; big[i]--);

	for(int i = 0; i < N; i++) dp[0][i] = 1ll;
	for(int i = 1; i < (1 << N); i++) for(int j = 0; j < N; j++) {
		dp[i][j] = j == 0 ? 0 : dp[i][j - 1];
		if(i & (1 << j)) dp[i][j] = (dp[i][j] + dp[i - (1 << j)][big[j]]) % MOD;
	}

	cout << dp[(1 << N) - 1][N - 1];
	return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 376 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 504 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 1016 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 1656 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 10 ms 5496 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 33 ms 20856 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 154 ms 82432 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 9 ms 5496 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 38 ms 20856 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 536 ms 262144 KB Execution killed with signal 11 (could be triggered by violating memory limits)
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 376 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 93 ms 41444 KB Output isn't correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 645 ms 262144 KB Execution killed with signal 11 (could be triggered by violating memory limits)
# 결과 실행 시간 메모리 Grader output
1 Runtime error 12 ms 632 KB Execution killed with signal 11 (could be triggered by violating memory limits)
# 결과 실행 시간 메모리 Grader output
1 Runtime error 12 ms 632 KB Execution killed with signal 11 (could be triggered by violating memory limits)
# 결과 실행 시간 메모리 Grader output
1 Runtime error 11 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
# 결과 실행 시간 메모리 Grader output
1 Runtime error 12 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
# 결과 실행 시간 메모리 Grader output
1 Runtime error 12 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 12 ms 504 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 12 ms 508 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -