Submission #59138448
Source Code Expand
#include <bits/stdc++.h>
#include<atcoder/all>
#define rep(i,n) for(int i=0;i<n;i++)
using namespace std;
using namespace atcoder;
#define all(a) a.begin(),a.end()
typedef long long ll;
typedef pair<ll,ll> P;
typedef modint1000000007 mi;
constexpr ll mod=1000000007;
constexpr ll inf=1ll<<61;
constexpr double PI=3.1415926535897932;
ll dp[402][402];
ll a[402];
ll memo(int L,int R){
if(dp[L][R]!=inf)return dp[L][R];
if(L>R)return dp[L][R]=0;
ll ans=abs(a[L]-a[R])+memo(L+1,R-1);
for(int i=L+1;i<R;i+=2)ans=min(ans,memo(L,i)+memo(i+1,R));
return dp[L][R]=ans;
}
int main(){
int n;cin>>n;
rep(i,2*n)cin>>a[i];
rep(i,2*n)rep(j,2*n)dp[i][j]=inf;
cout<<memo(0,2*n-1)<<endl;
}
Submission Info
Submission Time |
|
Task |
019 - Pick Two(★6) |
User |
Rho17 |
Language |
C++ 20 (gcc 12.2) |
Score |
6 |
Code Size |
721 Byte |
Status |
AC |
Exec Time |
17 ms |
Memory |
4740 KiB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
6 / 6 |
Status |
|
|
Set Name |
Test Cases |
Sample |
00_sample_0.txt, 00_sample_1.txt, 00_sample_2.txt, 00_sample_3.txt |
All |
00_sample_0.txt, 00_sample_1.txt, 00_sample_2.txt, 00_sample_3.txt, 01_cornar_0.txt, 01_cornar_1.txt, 01_cornar_2.txt, 02_random_0.txt, 02_random_1.txt, 02_random_2.txt, 02_random_3.txt, 03_maxima_0.txt, 03_maxima_1.txt, 03_maxima_2.txt |
Case Name |
Status |
Exec Time |
Memory |
00_sample_0.txt |
AC |
1 ms |
3488 KiB |
00_sample_1.txt |
AC |
1 ms |
3488 KiB |
00_sample_2.txt |
AC |
1 ms |
3420 KiB |
00_sample_3.txt |
AC |
1 ms |
3564 KiB |
01_cornar_0.txt |
AC |
1 ms |
3448 KiB |
01_cornar_1.txt |
AC |
1 ms |
3544 KiB |
01_cornar_2.txt |
AC |
3 ms |
4104 KiB |
02_random_0.txt |
AC |
3 ms |
4136 KiB |
02_random_1.txt |
AC |
1 ms |
3848 KiB |
02_random_2.txt |
AC |
2 ms |
3860 KiB |
02_random_3.txt |
AC |
14 ms |
4656 KiB |
03_maxima_0.txt |
AC |
15 ms |
4688 KiB |
03_maxima_1.txt |
AC |
17 ms |
4708 KiB |
03_maxima_2.txt |
AC |
16 ms |
4740 KiB |