したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

1524 ◆adhRKFl5jU:2009/03/01(日) 18:30:47
jid25
問題番号 9
点数 100
-----
#include <stdio.h>
#define INF 1000000001
#define min(x,y) (x<y?x:y)
#define N 3000
#define D 365
int val[D][N];
int mini[D][N][2];

main(){
int n,d;
int i,j,k,l;
int ans;
scanf("%d%d",&n,&d);
for(i=0;i<d;i++){
for(j=0;j<n;j++){
scanf("%d",&val[i][j]);
}
}
for(j=0;j<n;j++){
mini[0][j][0]=val[0][j];
mini[0][j][1]=INF;
}
for(i=1;i<d;i++){
int tmpmini,tmpj;
for(j=0;j<n;j++){
mini[i][j][1]=min(mini[i-1][j][0]+val[i][j]*9/10,mini[i-1][j][1]+val[i][j]*7/10);
}
tmpmini=INF;
for(j=0;j<n;j++){
tmpmini=min(tmpmini,min(mini[i-1][j][0],mini[i-1][j][1]));
}
for(j=0;j<n;j++){
mini[i][j][0]=tmpmini+val[i][j];
}
}
ans=INF;
for(j=0;j<n;j++){
ans=min(ans,min(mini[d-1][j][0],mini[d-1][j][1]));
}
printf("%d\n",ans);
}


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板