Submission #4674643


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
#define _MACRO(_1, _2, _3, NAME, ...) NAME
#define _repl(i,a,b) for(int i=(int)(a);i<(int)(b);i++)
#define _rep(i,n) _repl(i,0,n)
#define rep(...) _MACRO(__VA_ARGS__, _repl, _rep)(__VA_ARGS__)
#define pb push_back
#define all(x) begin(x),end(x)
#define uniq(x) sort(all(x)),(x).erase(unique(all(x)),end(x))
#ifdef LOCAL
#define dbg(...) _dbg(#__VA_ARGS__, __VA_ARGS__)
void _dbg(string){cerr<<endl;}
template<class H,class... T> void _dbg(string s,H h,T... t){int l=s.find(',');cerr<<s.substr(0,l)<<" = "<<h<<", ";_dbg(s.substr(l+1),t...);}
template<class T,class U> ostream& operator<<(ostream &o, const pair<T,U> &p){o<<"("<<p.first<<","<<p.second<<")";return o;}
template<class T> ostream& operator<<(ostream &o, const vector<T> &v){o<<"[";for(T t:v){o<<t<<",";}o<<"]";return o;}
#else
#define dbg(...) {}
#endif

const long INF = 1L<<60;

long dp[500005];

int main(){
  int n;
  long a,b;
  cin>>n>>a>>b;
  vector<int> v(n);
  rep(i,n) cin>>v[i];

  fill(dp, dp+n+2, INF);
  dp[0] = 0;

  rep(i,n) rep(j,n+1) if(dp[j]< INF && j != v[i]){
    if(j < v[i]){
      dp[v[i]] = min(dp[v[i]], dp[j]);
      dp[j] += a;
    } else {
      dp[j] += b;
    }
  }

  long ans = INF;
  rep(i,n+1) ans = min(ans, dp[i]);

  cout << ans << endl;

  return 0;
}

Submission Info

Submission Time
Task D - Rotation Sort
User tossy
Language C++14 (GCC 5.4.1)
Score 1000
Code Size 1348 Byte
Status AC
Exec Time 62 ms
Memory 256 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 1000 / 1000
Status
AC × 5
AC × 45
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KiB
0_01.txt AC 1 ms 256 KiB
0_02.txt AC 1 ms 256 KiB
0_03.txt AC 1 ms 256 KiB
0_04.txt AC 1 ms 256 KiB
1_00.txt AC 1 ms 256 KiB
1_01.txt AC 47 ms 256 KiB
1_02.txt AC 27 ms 256 KiB
1_03.txt AC 62 ms 256 KiB
1_04.txt AC 47 ms 256 KiB
1_05.txt AC 47 ms 256 KiB
1_06.txt AC 47 ms 256 KiB
1_07.txt AC 47 ms 256 KiB
1_08.txt AC 61 ms 256 KiB
1_09.txt AC 61 ms 256 KiB
1_10.txt AC 59 ms 256 KiB
1_11.txt AC 60 ms 256 KiB
1_12.txt AC 57 ms 256 KiB
1_13.txt AC 62 ms 256 KiB
1_14.txt AC 60 ms 256 KiB
1_15.txt AC 62 ms 256 KiB
1_16.txt AC 61 ms 256 KiB
1_17.txt AC 62 ms 256 KiB
1_18.txt AC 60 ms 256 KiB
1_19.txt AC 61 ms 256 KiB
1_20.txt AC 60 ms 256 KiB
1_21.txt AC 62 ms 256 KiB
1_22.txt AC 61 ms 256 KiB
1_23.txt AC 61 ms 256 KiB
1_24.txt AC 61 ms 256 KiB
1_25.txt AC 62 ms 256 KiB
1_26.txt AC 58 ms 256 KiB
1_27.txt AC 61 ms 256 KiB
1_28.txt AC 61 ms 256 KiB
1_29.txt AC 61 ms 256 KiB
1_30.txt AC 60 ms 256 KiB
1_31.txt AC 59 ms 256 KiB
1_32.txt AC 62 ms 256 KiB
1_33.txt AC 62 ms 256 KiB
1_34.txt AC 58 ms 256 KiB
1_35.txt AC 61 ms 256 KiB
1_36.txt AC 57 ms 256 KiB
1_37.txt AC 60 ms 256 KiB
1_38.txt AC 62 ms 256 KiB
1_39.txt AC 62 ms 256 KiB