Pagini recente » Cod sursa (job #235036) | Cod sursa (job #960752) | Cod sursa (job #1672104) | Cod sursa (job #2265413) | Cod sursa (job #1836021)
import java.util.*;
import java.io.*;
class Main {
public static void main(String []args) {
File inputFile = new File("podm.in");
File outputFile = new File("podm.out");
try {
FileInputStream inputStream = new FileInputStream(inputFile);
Scanner scanner = new Scanner(inputStream);
int n = scanner.nextInt();
int[] d = new int[n + 1];
long[][] dp = new long[n + 1][n + 1];
long INF = 1 << 60;
for (int i = 0; i <= n; i++)
d[i] = scanner.nextInt();
inputStream.close();
long solcrt;
for (int l = 1; l < n; l++) {
for (int i = 0; i < n - l; i++) {
int j = i + l;
dp[i][j] = INF;
for (int k = i; k < j; k++) {
solcrt = dp[i][k] + dp[k + 1][j] + d[i] * d[k + 1] * d[j + 1];
if (solcrt < dp[i][j]) dp[i][j] = solcrt;
}
}
}
try {
FileOutputStream outputStream = new FileOutputStream(outputFile);
PrintWriter writer = new PrintWriter(outputStream);
writer.print(dp[0][n - 1]);
writer.print('\n');
writer.close();
outputStream.close();
} catch(IOException e) {
}
} catch(IOException e) {
}
}
}