Submission #3011245


Source Code Expand

#include <cstdio>
#include <algorithm>

using namespace std;

#define MAXLEN 5005

int n;
char s[MAXLEN] = {0};
int c[MAXLEN] = {0};
int opt[MAXLEN] = {0};
int dp[MAXLEN][MAXLEN] = {0};

void PalindromeConcatenation(char *s) {
  int i,j;
  
  dp[0][0] = 1;
  opt[0] = c[0];
  
  for (i = 1; i < n; ++i) {
    dp[i][i] = 1; 
    opt[i] = opt[i-1] + c[0];
    
    for (j = i-1; j >= 0; --j) {
    
      if (s[i] == s[j] && (i - j < 2 || dp[j+1][i-1] == 1)) {
        dp[j][i] = 1;
        opt[i] = min(opt[j-1]+c[i-j], opt[i]);
      } 
    } 
  }
    printf("%d\n", opt[n-1]);
}

int main() {
  int i;
  scanf("%d", &n);
  scanf("%s", s);

  for (i = 0; i < n; ++i) {
    scanf("%d", &c[i]);
  }

  PalindromeConcatenation(s);
  return 0;
}

Submission Info

Submission Time
Task C - Palindrome Concatenation
User zlung
Language C++ (GCC 5.4.1)
Score 100
Code Size 786 Byte
Status AC
Exec Time 119 ms
Memory 96768 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:37:18: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d", &n);
                  ^
./Main.cpp:38:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%s", s);
                 ^
./Main.cpp:41:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &c[i]);
                       ^

Judge Result

Set Name Sample Dataset1 Dataset2
Score / Max Score 0 / 0 40 / 40 60 / 60
Status
AC × 3
AC × 24
AC × 48
Set Name Test Cases
Sample sample-01.txt, sample-02.txt, sample-03.txt
Dataset1 sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt
Dataset2 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, sample-01.txt, sample-02.txt, sample-03.txt
Case Name Status Exec Time Memory
01-01.txt AC 0 ms 128 KB
01-02.txt AC 1 ms 128 KB
01-03.txt AC 1 ms 512 KB
01-04.txt AC 1 ms 2688 KB
01-05.txt AC 1 ms 2688 KB
01-06.txt AC 1 ms 2688 KB
01-07.txt AC 1 ms 2688 KB
01-08.txt AC 1 ms 2688 KB
01-09.txt AC 1 ms 2688 KB
01-10.txt AC 3 ms 2688 KB
01-11.txt AC 1 ms 2688 KB
01-12.txt AC 1 ms 2688 KB
01-13.txt AC 1 ms 2688 KB
01-14.txt AC 1 ms 2688 KB
01-15.txt AC 1 ms 2688 KB
01-16.txt AC 1 ms 2688 KB
01-17.txt AC 1 ms 2688 KB
01-18.txt AC 1 ms 2688 KB
01-19.txt AC 1 ms 2688 KB
01-20.txt AC 1 ms 2688 KB
01-21.txt AC 1 ms 2688 KB
02-01.txt AC 5 ms 19072 KB
02-02.txt AC 11 ms 39552 KB
02-03.txt AC 19 ms 55936 KB
02-04.txt AC 45 ms 95104 KB
02-05.txt AC 89 ms 96768 KB
02-06.txt AC 63 ms 95104 KB
02-07.txt AC 55 ms 95104 KB
02-08.txt AC 89 ms 96768 KB
02-09.txt AC 45 ms 95232 KB
02-10.txt AC 45 ms 95232 KB
02-11.txt AC 42 ms 95104 KB
02-12.txt AC 42 ms 95104 KB
02-13.txt AC 42 ms 95104 KB
02-14.txt AC 42 ms 95104 KB
02-15.txt AC 42 ms 95104 KB
02-16.txt AC 78 ms 95104 KB
02-17.txt AC 78 ms 95104 KB
02-18.txt AC 78 ms 95104 KB
02-19.txt AC 77 ms 95104 KB
02-20.txt AC 78 ms 95104 KB
02-21.txt AC 45 ms 95104 KB
02-22.txt AC 58 ms 95104 KB
02-23.txt AC 119 ms 96768 KB
02-24.txt AC 119 ms 96768 KB
sample-01.txt AC 1 ms 256 KB
sample-02.txt AC 1 ms 256 KB
sample-03.txt AC 1 ms 256 KB