Update hw5 to a newer version.
Signed-off-by: jmug <u.g.a.mariano@gmail.com>
This commit is contained in:
parent
b24a264f7e
commit
9224001a22
262 changed files with 2575 additions and 1442 deletions
40
hw5/hw4programs/leastsquare.oat
Normal file
40
hw5/hw4programs/leastsquare.oat
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
|
||||
int program(int argc, string[] argv) {
|
||||
var n = 500;
|
||||
return leastsquare(n);
|
||||
}
|
||||
|
||||
/*finds the least number of squares to sum up to n*/
|
||||
|
||||
int leastsquare(int n) {
|
||||
var cache = new int[]{n+1};
|
||||
cache[0] = 0;
|
||||
cache[1] = 1;
|
||||
cache[2] = 2;
|
||||
cache[3] = 3;
|
||||
for (var i = 4; i < n + 1; i=i+1;) {
|
||||
/*set to some arbitrary high number*/
|
||||
cache[i] = i;
|
||||
|
||||
for (var k = 1; k < n; k = k + 1;) {
|
||||
var temp = k*k;
|
||||
if (temp > i) {
|
||||
|
||||
} else {
|
||||
cache[i] = min(cache[i], 1 + cache[i - temp]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return cache[n];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
int min(int y, int x) {
|
||||
if (x > y) {
|
||||
return y;
|
||||
} else {
|
||||
return x;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue