Project Euler 205
♥0 |
Line 45 |
Modified 2009-06-07 17:18:07 |
MIT License
archived:2017-03-30 04:58:33
ActionScript3 source code
/**
* Copyright uwi ( http://wonderfl.net/user/uwi )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/4nj2
*/
package {
import flash.display.Sprite;
import flash.text.TextField;
public class Euler205 extends Sprite {
private var _tf : TextField;
public function Euler205() {
_tf = new TextField();
_tf.width = 465;
_tf.height = 465;
addChild(_tf);
_tf.appendText(solve().toString() + "\n");
}
private function solve() : Number
{
var a : Array = emulate(4, 9);
var b : Array = emulate(6, 6);
var ret : Number = 0.0;
for(var i : int = 0;i <= 36;i++){
var sum : Number = 0.0;
for(var j : int = 0;j < i;j++){
sum += b[j];
}
ret += a[i] * sum;
}
return ret;
}
private function emulate(n : int, m : int) : Array
{
var ar : Array = [1.0];
for(var i : int = 0;i < m;i++){
_tf.appendText(ar.toString() + "\n");
var len : int = ar.length + n;
var d : Array = [];
for(var j : int = 0;j < len;j++)d.push(0.0);
for(var k : int = 0;k < ar.length;k++){
for(var l : int = 1;l <= n;l++){
d[k + l] += ar[k] / n;
}
}
ar = d;
}
return ar;
}
}
}