Skip to main content
added 83 characters in body
Source Link
Luis Mendo
  • 106.7k
  • 10
  • 139
  • 382

Matlab, 59−358 − 3 = 5655

Using an anonymous function:

@(a,b)[b*a*onesflipud(b,blkdiag(a^2*ones(a) -a*b,b^2*ones(b);a^2*ones(a-a*b) a*b*ones(a,b+a*b)] 

ExamplesExample:

>> @(a,b)[b*a*onesflipud(b,blkdiag(a^2*ones(a) -a*b,b^2*ones(b);a^2*ones(a-a*b) a*b*ones(a,b+a*b)] ans = @(a,b)[b*a*onesflipud(b,blkdiag(a^2*ones(a) -a*b,b^2*ones(b);a^2*ones(a-a*b) a*b*ones(a,b+a*b)]  >> ans(4,3) ans = 12 12 12 12 9 9 9 12 12 12 12 9 9 9 12 12 12 12 9 9 9 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 >> @(a,b)[b*a*onesflipud(b,blkdiag(a^2*ones(a) -a*b,b^2*ones(b);a^2*ones(a-a*b) a*b*ones(a,b+a*b)] ans = @(a,b)[b*a*onesflipud(b,blkdiag(a^2*ones(a) -a*b,b^2*ones(b);a^2*ones(a-a*b) a*b*ones(a,b+a*b)]  >> ans(0,3) ans = 9 9 9 9 9 9 9 9 9 

(Old solution) 59 − 3 = 56

Using an anonymous function:

@(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] 

Matlab, 59−3 = 56

Using an anonymous function:

@(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] 

Examples:

>> @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] ans = @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)]  >> ans(4,3) ans = 12 12 12 12 9 9 9 12 12 12 12 9 9 9 12 12 12 12 9 9 9 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 >> @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] ans = @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)]  >> ans(0,3) ans = 9 9 9 9 9 9 9 9 9 

Matlab, 58 − 3 = 55

Using an anonymous function:

@(a,b)flipud(blkdiag(a^2*ones(a)-a*b,b^2*ones(b)-a*b)+a*b) 

Example:

>> @(a,b)flipud(blkdiag(a^2*ones(a)-a*b,b^2*ones(b)-a*b)+a*b) ans = @(a,b)flipud(blkdiag(a^2*ones(a)-a*b,b^2*ones(b)-a*b)+a*b) >> ans(4,3) ans = 12 12 12 12 9 9 9 12 12 12 12 9 9 9 12 12 12 12 9 9 9 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 >> @(a,b)flipud(blkdiag(a^2*ones(a)-a*b,b^2*ones(b)-a*b)+a*b) ans = @(a,b)flipud(blkdiag(a^2*ones(a)-a*b,b^2*ones(b)-a*b)+a*b) >> ans(0,3) ans = 9 9 9 9 9 9 9 9 9 

(Old solution) 59 − 3 = 56

Using an anonymous function:

@(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] 
Source Link
Luis Mendo
  • 106.7k
  • 10
  • 139
  • 382

Matlab, 59−3 = 56

Using an anonymous function:

@(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] 

Examples:

>> @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] ans = @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] >> ans(4,3) ans = 12 12 12 12 9 9 9 12 12 12 12 9 9 9 12 12 12 12 9 9 9 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 16 16 16 16 12 12 12 >> @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] ans = @(a,b)[b*a*ones(b,a) b^2*ones(b);a^2*ones(a) a*b*ones(a,b)] >> ans(0,3) ans = 9 9 9 9 9 9 9 9 9