Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #define x 5000005
- int n,m,map[505][505]={0};
- int sum[505][505]={0};
- int main()
- {
- int i,j;
- scanf("%d%d",&n,&m);
- for(i=1;i<=n;i++)
- {
- for(j=1;j<=m;j++)
- {
- scanf("%d",&map[i][j]);
- if(i==1)
- {
- sum[i][j]=map[i][j];
- }
- }
- }
- for(i=2;i<=n;i++)
- {
- for(j=1;j<=m;j++)
- {
- if(sum[i-1][j-1]<=0) sum[i-1][j-1]=x;
- if(sum[i-1][j+1]<=0) sum[i-1][j+1]=x;
- if(sum[i-1][j-1]<sum[i-1][j+1])
- {
- sum[i][j]=sum[i-1][j-1]+map[i][j];
- }
- else sum[i][j]=sum[i-1][j+1]+map[i][j];
- }
- }
- /*printf("---------\n");
- for(i=1;i<=n;i++)
- {
- for(j=1;j<=m;j++)
- {
- printf("%d ",sum[i][j]);
- }
- printf("\n");
- }*/
- int min=sum[n][m];
- for(j=1;j<=m;j++) if(sum[n][j]<min) min=sum[n][j];
- printf("%d",min);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement