提出 #54289370
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
int mod = 1e9 + 7;
int n, k;
int t[(int)1e5 + 1];
int frogJump(vector<int>& a, int n, int k) {
if (n == 1) return 0; // Starting point, no cost
if (t[n] != -1) return t[n];
int minCost = INT_MAX;
for (int i = 1; i <= k; ++i) {
if (n - i >= 1) {
minCost = min(minCost, frogJump(a, n - i, k) + abs(a[n - 1] - a[n - i - 1]));
}
}
t[n] = minCost % mod;
return t[n];
}
int main() {
memset(t, -1, sizeof(t));
cin >> n >> k;
vector<int> a(n);
for (int i = 0; i < n; ++i) {
cin >> a[i];
}
int result = frogJump(a, n, k);
cout << result << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | B - Frog 2 |
| ユーザ | DevduttSahoo |
| 言語 | C++ 20 (gcc 12.2) |
| 得点 | 100 |
| コード長 | 729 Byte |
| 結果 | AC |
| 実行時間 | 36 ms |
| メモリ | 13288 KiB |
ジャッジ結果
| セット名 | All | ||
|---|---|---|---|
| 得点 / 配点 | 100 / 100 | ||
| 結果 |
|
| セット名 | テストケース |
|---|---|
| All | 0_00, 0_01, 0_02, 0_03, 1_00, 1_01, 1_02, 1_03, 1_04, 1_05, 1_06, 1_07, 1_08, 1_09, 1_10, 1_11 |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 0_00 | AC | 1 ms | 3856 KiB |
| 0_01 | AC | 1 ms | 3988 KiB |
| 0_02 | AC | 1 ms | 3784 KiB |
| 0_03 | AC | 1 ms | 3788 KiB |
| 1_00 | AC | 1 ms | 3916 KiB |
| 1_01 | AC | 1 ms | 3860 KiB |
| 1_02 | AC | 19 ms | 13288 KiB |
| 1_03 | AC | 36 ms | 13224 KiB |
| 1_04 | AC | 19 ms | 13276 KiB |
| 1_05 | AC | 19 ms | 13172 KiB |
| 1_06 | AC | 20 ms | 13224 KiB |
| 1_07 | AC | 20 ms | 13192 KiB |
| 1_08 | AC | 21 ms | 13184 KiB |
| 1_09 | AC | 23 ms | 13268 KiB |
| 1_10 | AC | 29 ms | 13108 KiB |
| 1_11 | AC | 35 ms | 13236 KiB |