Submission #489902
Source Code Expand
using System; using System.Collections.Generic; using System.Linq; using System.IO; using System.Text; using System.Numerics; namespace Solver { class Program { const int M = 1000000007; const double eps = 1e-9; static string s; static void Main() { var sw = new System.IO.StreamWriter(Console.OpenStandardOutput()) { AutoFlush = false }; var sc = new Scan(); int n = sc.Int; s = sc.Str; var c = sc.IntArr; var dp = new int[n + 1]; for (int i = 0; i < n; i++) { dp[i + 1] = dp[i] + c[0]; for (int j = 0; j < i; j++) if (kaibun(j, i)) dp[i + 1] = Math.Min(dp[i + 1], dp[j] + c[i - j]); } sw.WriteLine(dp[n]); sw.Flush(); } static bool kaibun(int l, int r) { for (int i = 0; i < r - l; i++) if (s[l + i] != s[r - i]) return false; return true; } } class Scan { public int Int { get { return int.Parse(Console.ReadLine().Trim()); } } public long Long { get { return long.Parse(Console.ReadLine().Trim()); } } public string Str { get { return Console.ReadLine().Trim(); } } public int[] IntArr { get { return Console.ReadLine().Trim().Split().Select(int.Parse).ToArray(); } } public int[] IntArrWithSep(char sep) { return Console.ReadLine().Trim().Split(sep).Select(int.Parse).ToArray(); } public long[] LongArr { get { return Console.ReadLine().Trim().Split().Select(long.Parse).ToArray(); } } public double[] DoubleArr { get { return Console.ReadLine().Split().Select(double.Parse).ToArray(); } } public string[] StrArr { get { return Console.ReadLine().Trim().Split(); } } public List<int> IntList { get { return Console.ReadLine().Trim().Split().Select(int.Parse).ToList(); } } public List<long> LongList { get { return Console.ReadLine().Trim().Split().Select(long.Parse).ToList(); } } public void Multi(out int a, out int b) { var arr = IntArr; a = arr[0]; b = arr[1]; } public void Multi(out int a, out int b, out int c) { var arr = IntArr; a = arr[0]; b = arr[1]; c = arr[2]; } public void Multi(out int a, out int b, out int c, out int d) { var arr = IntArr; a = arr[0]; b = arr[1]; c = arr[2]; d = arr[3]; } public void Multi(out int a, out string b) { var arr = StrArr; a = int.Parse(arr[0]); b = arr[1]; } public void Multi(out int a, out int b, out string c) { var arr = StrArr; a = int.Parse(arr[0]); b = int.Parse(arr[1]); c = arr[2]; } public void Multi(out int a, out char b) { var arr = StrArr; a = int.Parse(arr[0]); b = arr[1][0]; } public void Multi(out long a, out long b) { var arr = LongArr; a = arr[0]; b = arr[1]; } public void Multi(out long a, out int b) { var arr = LongArr; a = arr[0]; b = (int)arr[1]; } public void Multi(out string a, out string b) { var arr = StrArr; a = arr[0]; b = arr[1]; } } }
Submission Info
Submission Time | |
---|---|
Task | C - Palindrome Concatenation |
User | riantkb |
Language | C# (Mono 3.2.1.0) |
Score | 40 |
Code Size | 3207 Byte |
Status | TLE |
Exec Time | 2041 ms |
Memory | 10136 KB |
Judge Result
Set Name | Sample | Dataset1 | Dataset2 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 40 / 40 | 0 / 60 | ||||||||
Status |
|
|
|
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 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | AC | 198 ms | 9500 KB |
01-02.txt | AC | 136 ms | 9376 KB |
01-03.txt | AC | 137 ms | 9420 KB |
01-04.txt | AC | 139 ms | 9504 KB |
01-05.txt | AC | 148 ms | 9484 KB |
01-06.txt | AC | 138 ms | 9500 KB |
01-07.txt | AC | 138 ms | 9504 KB |
01-08.txt | AC | 145 ms | 9484 KB |
01-09.txt | AC | 143 ms | 9496 KB |
01-10.txt | AC | 142 ms | 9488 KB |
01-11.txt | AC | 136 ms | 9504 KB |
01-12.txt | AC | 134 ms | 9500 KB |
01-13.txt | AC | 138 ms | 9504 KB |
01-14.txt | AC | 138 ms | 9484 KB |
01-15.txt | AC | 135 ms | 9480 KB |
01-16.txt | AC | 135 ms | 9464 KB |
01-17.txt | AC | 135 ms | 9496 KB |
01-18.txt | AC | 133 ms | 9492 KB |
01-19.txt | AC | 135 ms | 9504 KB |
01-20.txt | AC | 137 ms | 9484 KB |
01-21.txt | AC | 136 ms | 9480 KB |
02-01.txt | AC | 141 ms | 9572 KB |
02-02.txt | AC | 158 ms | 9624 KB |
02-03.txt | AC | 181 ms | 9872 KB |
02-04.txt | AC | 278 ms | 10116 KB |
02-05.txt | TLE | 2041 ms | 9656 KB |
02-06.txt | AC | 341 ms | 10008 KB |
02-07.txt | AC | 306 ms | 10068 KB |
02-08.txt | TLE | 2034 ms | 9764 KB |
02-09.txt | AC | 315 ms | 10020 KB |
02-10.txt | AC | 307 ms | 10020 KB |
02-11.txt | AC | 284 ms | 10096 KB |
02-12.txt | AC | 284 ms | 10132 KB |
02-13.txt | AC | 285 ms | 10024 KB |
02-14.txt | AC | 287 ms | 10008 KB |
02-15.txt | AC | 286 ms | 10024 KB |
02-16.txt | AC | 544 ms | 10128 KB |
02-17.txt | AC | 533 ms | 10136 KB |
02-18.txt | AC | 512 ms | 10120 KB |
02-19.txt | AC | 529 ms | 10020 KB |
02-20.txt | AC | 524 ms | 10016 KB |
02-21.txt | AC | 286 ms | 9996 KB |
02-22.txt | AC | 295 ms | 10132 KB |
02-23.txt | TLE | 2035 ms | 9656 KB |
02-24.txt | TLE | 2036 ms | 9676 KB |
sample-01.txt | AC | 144 ms | 9404 KB |
sample-02.txt | AC | 143 ms | 9484 KB |
sample-03.txt | AC | 137 ms | 9420 KB |