zoj2972 Hurdles of 110m

2014-11-23 20:16:30 · 作者: · 浏览: 8
#include    
#include    
#define min(a,b)  a= f1)  
                    f[i][j - f1] = min(f[i][j - f1], f[i - 1][j] + t1);  
                f[i][j] = min(f[i][j], f[i - 1][j] + t2);  
                if (j + f2 <= m)  
                    f[i][j + f2] = min(f[i][j + f2], f[i - 1][j] + t3);  
                else  
                    f[i][m] = min(f[i][m], f[i - 1][j] + t3);  
            }  
        }  
  
        int minn = INF;  
        for (i = 0; i <= m; i++)  
            if (f[n][i] < minn) minn = f[n][i];  
        printf("%d\n", minn);  
    }  
    return 0;  
}  

#include 
#include #define min(a,b) a= f1) f[i][j - f1] = min(f[i][j - f1], f[i - 1][j] + t1); f[i][j] = min(f[i][j], f[i - 1][j] + t2); if (j + f2 <= m) f[i][j + f2] = min(f[i][j + f2], f[i - 1][j] + t3); else f[i][m] = min(f[i][m], f[i - 1][j] + t3); } } int minn = INF; for (i = 0; i <= m; i++) if (f[n][i] < minn) minn = f[n][i]; printf("%d\n", minn); } return 0; }