Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
怎末总超时#include<stdio.h> int c[200],n; void main() { int dp(int a,int b); int i; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&c[i]); printf("%d\n",dp(0,n-1)); } int dp(int a,int b) { int i,min=1000001; if(b-a<=1) return 0; else if(b-a==2) return (c[a]*c[a+1]*c[b]); else { for(i=a+1;i<b;i++) { if(min>dp(a,i)+dp(i,b)+c[a]*c[i]*c[b]) min=dp(a,i)+dp(i,b)+c[a]*c[i]*c[b]; } return min; } } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator