#include #define FOR(i,bg,ed) for(ll i=(bg);i<(ed);i++) #define REP(i,n) FOR(i,0,n) #define MOD 1000000007 #define int long long using namespace std; typedef long long ll; const int INF = 1e9; int dp[101][101]; signed main() { int W, H, N, F, x, y, c; cin >> W >> H >> N >> F; REP(i,H+1) REP(j,W+1) dp[i][j] = (i + j) * F; REP(t,N) { cin >> x >> y >> c; for (int i=H; i>=0; i--) { for (int j=W; j>=0; j--) { if (i >= y && j >= x) dp[i][j] = min(dp[i][j], dp[i-y][j-x] + c); } } } cout << dp[H][W] << endl; }