<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>algorithm &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/algorithm/</link>
	<description>Feed of posts on WordPress.com tagged "algorithm"</description>
	<pubDate>Sun, 19 Jul 2009 20:05:57 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[soundex algorithm in C++]]></title>
<link>http://iammat.wordpress.com/2009/07/19/soundex-in-cpp/</link>
<pubDate>Sun, 19 Jul 2009 04:00:02 +0000</pubDate>
<dc:creator>Mathew Duafala</dc:creator>
<guid>http://iammat.wordpress.com/2009/07/19/soundex-in-cpp/</guid>
<description><![CDATA[I couldn&#8217;t actually find a C++ version of the soundex algorithm (all the ones I found were C c]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I couldn&#8217;t actually find a C++ version of the soundex algorithm (all the ones I found were C code with a .cpp extension), so I threw one together.<br />
Here it is if anyone is interested.</p>
<p>static char     lookup[] = {<br />
&#8216;0&#8242;,    /* A */<br />
&#8216;1&#8242;,    /* B */<br />
&#8216;2&#8242;,    /* C */<br />
&#8216;3&#8242;,    /* D */<br />
&#8216;0&#8242;,    /* E */<br />
&#8216;1&#8242;,    /* F */<br />
&#8216;2&#8242;,    /* G */<br />
&#8216;0&#8242;,    /* H */<br />
&#8216;0&#8242;,    /* I */<br />
&#8216;2&#8242;,    /* J */<br />
&#8216;2&#8242;,    /* K */<br />
&#8216;4&#8242;,    /* L */<br />
&#8216;5&#8242;,    /* M */<br />
&#8216;5&#8242;,    /* N */<br />
&#8216;0&#8242;,    /* O */<br />
&#8216;1&#8242;,    /* P */<br />
&#8216;0&#8242;,    /* Q */<br />
&#8216;6&#8242;,    /* R */<br />
&#8216;2&#8242;,    /* S */<br />
&#8216;3&#8242;,    /* T */<br />
&#8216;0&#8242;,    /* U */<br />
&#8216;1&#8242;,    /* V */<br />
&#8216;0&#8242;,    /* W */<br />
&#8216;2&#8242;,    /* X */<br />
&#8216;0&#8242;,    /* Y */<br />
&#8216;2&#8242;,    /* Z */<br />
};</p>
<p>std::string computeSoundex(const std::string &#38;input, const int resultLength){</p>
<p>//keep the first character intact<br />
std::string result = input.substr(0,1);</p>
<p>//compute value for each character thereafter<br />
for(int i=1;i&#60;input.length(); i++){</p>
<p>//skip non-alpha characters<br />
if(!isalpha(input[i])){<br />
continue;<br />
}<br />
//uppercase the input value<br />
const char lookupInput = islower(input[i]) ? toupper(input[i]) : input[i];<br />
//lookup it&#8217;s value<br />
const char *lookupVal = &#38;lookup[lookupInput-'A'];</p>
<p>//make sure this isn&#8217;t a dupe value<br />
if(result.find(lookupVal, 0) != 0 ){<br />
result.append(lookupVal);<br />
}<br />
}</p>
<p>//make sure we could actually encode something<br />
if(result.length() &#62;= resultLength){<br />
return result.substr(0,resultLength-1);</p>
<div id=":11">}</p>
<p>//In cases of empty strings (or strings with no encodable<br />
characters, return Z000<br />
return &#8220;Z000&#8243;;<br />
}</p></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Bressenham's Line Drawing Algorithm]]></title>
<link>http://jintu.wordpress.com/2009/07/18/bressenhams-line-drawing-algorithm/</link>
<pubDate>Sat, 18 Jul 2009 19:35:06 +0000</pubDate>
<dc:creator>jintu</dc:creator>
<guid>http://jintu.wordpress.com/2009/07/18/bressenhams-line-drawing-algorithm/</guid>
<description><![CDATA[#include&lt;stdio.h&gt;
#include&lt;conio.h&gt;
#include&lt;graphics.h&gt;
#include&lt;math.h&gt;

v]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><strong>#include&#60;stdio.h&#62;<br />
#include&#60;conio.h&#62;<br />
#include&#60;graphics.h&#62;<br />
#include&#60;math.h&#62;<br />
</strong></p>
<p>void swap(int &#38;x,int &#38;y)<br />
{<br />
int k=x;<br />
x=y;<br />
y=k;<br />
}</p>
<p>void main()<br />
{<br />
int gd=DETECT,gm=DETECT,x1,x2,y1,y2,dx,dy,p,k;<br />
float m=0;</p>
<p>clrscr();</p>
<p>printf(&#8221;Enter the sarting point x1 &#38; y1n&#8221;);<br />
scanf(&#8221;%d%d&#8221;,&#38;x1,&#38;y1);</p>
<p>printf(&#8221;Enter the end point x2 &#38; y2n&#8221;);<br />
scanf(&#8221;%d%d&#8221;,&#38;x2,&#38;y2);</p>
<p>dx=abs(x2-x1);<br />
dy=abs(y2-y1);<br />
m=(float)(y2-y1)/(x2-x1);</p>
<p>initgraph(&#38;gd,&#38;gm,&#8221;");<br />
cleardevice();</p>
<p>if(fabs(m)&#62;1)<br />
{<br />
swap(x1,y1);<br />
swap(x2,y2);<br />
swap(dx,dy);<br />
}</p>
<p>if((x1&#62;x2))<br />
{<br />
x1=x2;<br />
y1=y2;<br />
}<br />
p=2*dy-dx;<br />
for(k=0;k&#60;abs(dx);k++)<br />
{<br />
if(p&#60;0)<br />
{<br />
p=p+2*dy;<br />
}<br />
else<br />
{<br />
if(m&#60;0) y1&#8211;;<br />
else y1++;<br />
p=p+(2*dy)-(2*dx);<br />
}<br />
if(fabs(m)&#60;=1)putpixel(x1++,y1,15);<br />
else putpixel(y1,x1++,15);<br />
}</p>
<p>getch();<br />
}</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Algorithm study notes -- Binary tree]]></title>
<link>http://lewislearntoprogram.wordpress.com/2009/07/18/algorithm-study-notes-binary-tree/</link>
<pubDate>Sat, 18 Jul 2009 13:08:23 +0000</pubDate>
<dc:creator>iowahawk238</dc:creator>
<guid>http://lewislearntoprogram.wordpress.com/2009/07/18/algorithm-study-notes-binary-tree/</guid>
<description><![CDATA[Quote: http://cslibrary.stanford.edu/110/BinaryTrees.html
1. Build123() Solution (C/C++)
// call new]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Quote: <a href="http://cslibrary.stanford.edu/110/BinaryTrees.html">http://cslibrary.stanford.edu/110/BinaryTrees.html</a></p>
<h3>1. Build123() Solution (C/C++)</h3>
<p><tt>// call newNode() three times</tt><br />
<tt>struct node* build123a() {</tt><br />
<tt>  struct node* root = newNode(2);</tt><br />
<tt>  struct node* lChild = newNode(1);</tt><br />
<tt>  struct node* rChild = newNode(3);</tt></p>
<p><tt>  root-&#62;left = lChild;</tt><br />
<tt>  root-&#62;right= rChild;</tt></p>
<p><tt>  return(root);</tt><br />
<tt>}</tt></p>
<p><tt>// call newNode() three times, and use only one local variable</tt><br />
<tt>struct node* build123b() {</tt><br />
<tt>  struct node* root = newNode(2);</tt><br />
<tt>  root-&#62;left = newNode(1);</tt><br />
<tt>  root-&#62;right = newNode(3);</tt></p>
<p><tt>  return(root);</tt><br />
<tt>}</tt><br />
 </p>
<p><tt>/*</tt><br />
<tt> Build 123 by calling insert() three times.</tt><br />
<tt> Note that the '2' must be inserted first.</tt><br />
<tt>*/</tt><br />
<tt>struct node* build123c() {</tt><br />
<tt>  struct node* root = NULL;</tt><br />
<tt>  root = insert(root, 2);</tt><br />
<tt>  root = insert(root, 1);</tt><br />
<tt>  root = insert(root, 3);</tt><br />
<tt>  return(root);</tt><br />
<tt>}</tt><br />
 </p>
<h3>2. size() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Compute the number of nodes in a tree.</tt><br />
<tt>*/</tt><br />
<tt>int size(struct node* node) {</tt><br />
<tt>  if (node==NULL) {</tt><br />
<tt>    return(0);</tt><br />
<tt>  } else {</tt><br />
<tt>    return(size(node-&#62;left) + 1 + size(node-&#62;right));</tt><br />
<tt>  }</tt><br />
<tt>}</tt><br />
 </p>
<h3>3. maxDepth() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Compute the "maxDepth" of a tree -- the number of nodes along</tt><br />
<tt> the longest path from the root node down to the farthest leaf node.</tt><br />
<tt>*/</tt><br />
<tt>int maxDepth(struct node* node) {</tt><br />
<tt>  if (node==NULL) {</tt><br />
<tt>    return(0);</tt><br />
<tt>  }</tt><br />
<tt>  else {</tt><br />
<tt>    // compute the depth of each subtree</tt><br />
<tt>    int lDepth = maxDepth(node-&#62;left);</tt><br />
<tt>    int rDepth = maxDepth(node-&#62;right);</tt></p>
<p><tt>    // use the larger one</tt><br />
<tt>    if (lDepth &#62; rDepth) return(lDepth+1);</tt><br />
<tt>    else return(rDepth+1);</tt><br />
<tt>  }</tt><br />
<tt>}</tt><br />
 </p>
<h3>4. minValue() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Given a non-empty binary search tree,</tt><br />
<tt> return the minimum data value found in that tree.</tt><br />
<tt> Note that the entire tree does not need to be searched.</tt><br />
<tt>*/</tt><br />
<tt>int minValue(struct node* node) {</tt><br />
<tt>  struct node* current = node;</tt></p>
<p><tt>  // loop down to find the leftmost leaf</tt><br />
<tt>  while (current-&#62;left != NULL) {</tt><br />
<tt>    current = current-&#62;left;</tt><br />
<tt>  }</tt></p>
<p><tt>  return(current-&#62;data);</tt><br />
<tt>}</tt><br />
 </p>
<h3>5. printTree() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Given a binary search tree, print out</tt><br />
<tt> its data elements in increasing</tt><br />
<tt> sorted order.</tt><br />
<tt>*/</tt><br />
<tt>void printTree(struct node* node) {</tt><br />
<tt>  if (node == NULL) return;</tt></p>
<p><tt>  printTree(node-&#62;left);</tt><br />
<tt>  printf("%d ", node-&#62;data);</tt><br />
<tt>  printTree(node-&#62;right);</tt><br />
<tt>}</tt><br />
 </p>
<h3>6. printPostorder() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Given a binary tree, print its</tt><br />
<tt> nodes according to the "bottom-up"</tt><br />
<tt> postorder traversal.</tt><br />
<tt>*/</tt><br />
<tt>void printPostorder(struct node* node) {</tt><br />
<tt>  if (node == NULL) return;</tt></p>
<p><tt>  // first recur on both subtrees</tt><br />
<tt>  printTree(node-&#62;left);</tt><br />
<tt>  printTree(node-&#62;right);</tt></p>
<p><tt>  // then deal with the node</tt><br />
<tt>  printf("%d ", node-&#62;data);</tt><br />
<tt>}</tt><br />
 </p>
<h3>7. hasPathSum() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Given a tree and a sum, return true if there is a path from the root</tt><br />
<tt> down to a leaf, such that adding up all the values along the path</tt><br />
<tt> equals the given sum.</tt></p>
<p><tt> Strategy: subtract the node value from the sum when recurring down,</tt><br />
<tt> and check to see if the sum is 0 when you run out of tree.</tt><br />
<tt>*/</tt><br />
<tt>int hasPathSum(struct node* node, int sum) {</tt><br />
<tt>  // return true if we run out of tree and sum==0</tt><br />
<tt>  if (node == NULL) {</tt><br />
<tt>    return(sum == 0);</tt><br />
<tt>  }</tt><br />
<tt>  else {</tt><br />
<tt>  // otherwise check both subtrees</tt><br />
<tt>    int subSum = sum - node-&#62;data;</tt> //subSum seems not necessary<br />
<tt>    return(hasPathSum(node-&#62;left, subSum) &#124;&#124;</tt><br />
<tt>           hasPathSum(node-&#62;right, subSum));</tt><br />
<tt>  }</tt><br />
<tt>}</tt></p>
<p> </p>
<h3>8. printPaths() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Given a binary tree, print out all of its root-to-leaf</tt><br />
<tt> paths, one per line. Uses a recursive helper to do the work.</tt><br />
<tt>*/</tt><br />
<tt>void printPaths(struct node* node) {</tt><br />
<tt>  int path[1000];</tt></p>
<p><tt>  printPathsRecur(node, path, 0);</tt><br />
<tt>}</tt></p>
<p><tt>/*</tt><br />
<tt> Recursive helper function -- given a node, and an array containing</tt><br />
<tt> the path from the root node up to but not including this node,</tt><br />
<tt> print out all the root-leaf paths.</tt><br />
<tt>*/</tt><br />
<tt>void printPathsRecur(struct node* node, int path[], int pathLen) {</tt><br />
<tt>  if (node==NULL) return;</tt></p>
<p><tt>  // append this node to the path array</tt><br />
<tt>  path[pathLen] = node-&#62;data;</tt><br />
<tt>  pathLen++;</tt></p>
<p><tt>  // it's a leaf, so print the path that led to here</tt><br />
<tt>  if (node-&#62;left==NULL &#38;&#38; node-&#62;right==NULL) {</tt><br />
<tt>    printArray(path, pathLen);</tt><br />
<tt>  }</tt><br />
<tt>  else {</tt><br />
<tt>  // otherwise try both subtrees</tt><br />
<tt>    printPathsRecur(node-&#62;left, path, pathLen);</tt><br />
<tt>    printPathsRecur(node-&#62;right, path, pathLen);</tt><br />
<tt>  }</tt><br />
<tt>}</tt></p>
<p><tt>// Utility that prints out an array on a line.</tt><br />
<tt>void printArray(int ints[], int len) {</tt><br />
<tt>  int i;</tt><br />
<tt>  for (i=0; i&#60;len; i++) {</tt><br />
<tt>    printf("%d ", ints[i]);</tt><br />
<tt>  }</tt><br />
<tt>  printf("\n");</tt><br />
<tt>}</tt><br />
 </p>
<h3>9. mirror() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Change a tree so that the roles of the</tt><br />
<tt> left and right pointers are swapped at every node.</tt></p>
<p><tt> So the tree...</tt><br />
<tt>       4</tt><br />
<tt>      / \</tt><br />
<tt>     2   5</tt><br />
<tt>    / \</tt><br />
<tt>   1   3</tt></p>
<p><tt> is changed to...</tt><br />
<tt>       4</tt><br />
<tt>      / \</tt><br />
<tt>     5   2</tt><br />
<tt>        / \</tt><br />
<tt>       3   1</tt><br />
<tt>*/</tt><br />
<tt>void mirror(struct node* node) {</tt><br />
<tt>  if (node==NULL) {</tt><br />
<tt>    return;</tt><br />
<tt>  }</tt><br />
<tt>  else {</tt><br />
<tt>    struct node* temp;</tt></p>
<p><tt>    // do the subtrees</tt><br />
<tt>    mirror(node-&#62;left);</tt><br />
<tt>    mirror(node-&#62;right);</tt></p>
<p><tt>    // swap the pointers in this node</tt></p>
<p>         //The priority of  recursion procedure is not necessary <br />
<tt>    temp = node-&#62;left;</tt><br />
<tt>    node-&#62;left = node-&#62;right;</tt><br />
<tt>    node-&#62;right = temp;</tt><br />
<tt>  }</tt><br />
<tt>}</tt><br />
 </p>
<h3>10. doubleTree() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> For each node in a binary search tree,</tt><br />
<tt> create a new duplicate node, and insert</tt><br />
<tt> the duplicate as the left child of the original node.</tt><br />
<tt> The resulting tree should still be a binary search tree.</tt></p>
<p><tt> So the tree...</tt><br />
<tt>    2</tt><br />
<tt>   / \</tt><br />
<tt>  1   3</tt></p>
<p><tt> Is changed to...</tt><br />
<tt>       2</tt><br />
<tt>      / \</tt><br />
<tt>     2   3</tt><br />
<tt>    /   /</tt><br />
<tt>   1   3</tt><br />
<tt>  /</tt><br />
<tt> 1</tt></p>
<p><tt>*/</tt><br />
<tt>void doubleTree(struct node* node) {</tt><br />
<tt>  struct node* oldLeft;</tt></p>
<p><tt>  if (node==NULL) return;</tt></p>
<p><tt>  // do the subtrees</tt><br />
<tt>  doubleTree(node-&#62;left);</tt><br />
<tt>  doubleTree(node-&#62;right);</tt></p>
<p><tt>  // duplicate this node to its left</tt><br />
<tt>  oldLeft = node-&#62;left;</tt><br />
<tt>  node-&#62;left = newNode(node-&#62;data);</tt><br />
<tt>  node-&#62;left-&#62;left = oldLeft;</tt><br />
<tt>}</tt> <br />
 <br />
void doubleTree(struct node* node){<br />
    if(node==NULL)<br />
    return;</p>
<p>    else{<br />
    struct node* duplicate=NewMode(node-&#62;data);</p>
<p>    doubleTree(node-&#62;left);<br />
    doubleTree(node-&#62;right);</p>
<p>    duplicate-&#62;left=node-&#62;left;<br />
    node-&#62;left=duplicate;</p>
<p>       }<br />
}</p>
<h3>11. sameTree() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Given two trees, return true if they are</tt><br />
<tt> structurally identical.</tt><br />
<tt>*/</tt><br />
<tt>int sameTree(struct node* a, struct node* b) {</tt><br />
<tt>  // 1. both empty -&#62; true</tt><br />
<tt>  if (a==NULL &#38;&#38; b==NULL) return(true);</tt></p>
<p><tt>  // 2. both non-empty -&#62; compare them</tt><br />
<tt>  else if (a!=NULL &#38;&#38; b!=NULL) {</tt><br />
<tt>    return(</tt><br />
<tt>      a-&#62;data == b-&#62;data &#38;&#38;</tt><br />
<tt>      sameTree(a-&#62;left, b-&#62;left) &#38;&#38;</tt><br />
<tt>      sameTree(a-&#62;right, b-&#62;right)</tt><br />
<tt>    );</tt><br />
<tt>  }</tt><br />
<tt>  // 3. one empty, one not -&#62; false</tt><br />
<tt>  else return(false);</tt><br />
<tt>}</tt><br />
 <br />
 </p>
<h3>12. countTrees() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> For the key values 1...numKeys, how many structurally unique</tt><br />
<tt> binary search trees are possible that store those keys.</tt></p>
<p><tt> Strategy: consider that each value could be the root.</tt><br />
<tt> Recursively find the size of the left and right subtrees.</tt><br />
<tt>*/</tt><br />
<tt>int countTrees(int numKeys) {</tt></p>
<p><tt>  if (numKeys &#60;=1) {</tt><br />
<tt>    return(1);</tt><br />
<tt>  }</tt><br />
<tt>  else {</tt><br />
<tt>    // there will be one value at the root, with whatever remains</tt><br />
<tt>    // on the left and right each forming their own subtrees.</tt><br />
<tt>    // Iterate through all the values that could be the root...</tt><br />
<tt>    int sum = 0;</tt><br />
<tt>    int left, right, root;</tt></p>
<p><tt>    for (root=1; root&#60;=numKeys; root++) {</tt><br />
<tt>      left = countTrees(root - 1);</tt><br />
<tt>      right = countTrees(numKeys - root);</tt></p>
<p><tt>      // number of possible trees with this root == left*right</tt><br />
<tt>      sum += left*right;</tt><br />
<tt>    }</tt></p>
<p><tt>    return(sum);</tt><br />
<tt>  }</tt><br />
<tt>}</tt><br />
 <br />
 </p>
<h3>13. isBST1() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Returns true if a binary tree is a binary search tree.</tt><br />
<tt>*/</tt><br />
<tt>int isBST(struct node* node) {</tt><br />
<tt>  if (node==NULL) return(true);</tt></p>
<p><tt>  // false if the max of the left is &#62; than us</tt></p>
<p><tt>  // (bug -- an earlier version had min/max backwards here)</tt><br />
<tt>  if (node-&#62;left!=NULL &#38;&#38; maxValue(node-&#62;left) &#62; node-&#62;data)</tt><br />
<tt>    return(false);</tt></p>
<p><tt>  // false if the min of the right is &#60;= than us</tt><br />
<tt>  if (node-&#62;right!=NULL &#38;&#38; minValue(node-&#62;right) &#60;= node-&#62;data)</tt><br />
<tt>    return(false);</tt></p>
<p><tt>  // false if, recursively, the left or right is not a BST</tt><br />
<tt>  if (!isBST(node-&#62;left) &#124;&#124; !isBST(node-&#62;right))</tt><br />
<tt>    return(false);</tt></p>
<p><tt>  // passing all that, it's a BST</tt><br />
<tt>  return(true);</tt><br />
<tt>}</tt><br />
 <br />
 </p>
<h3>14. isBST2() Solution (C/C++)</h3>
<p><tt>/*</tt><br />
<tt> Returns true if the given tree is a binary search tree</tt><br />
<tt> (efficient version).</tt><br />
<tt>*/</tt><br />
<tt>int isBST2(struct node* node) {</tt><br />
<tt>  return(isBSTUtil(node, INT_MIN, INT_MAX));</tt><br />
<tt>}</tt></p>
<p><tt>/*</tt><br />
<tt> Returns true if the given tree is a BST and its</tt><br />
<tt> values are &#62;= min and &#60;= max.</tt><br />
<tt>*/</tt><br />
<tt>int isBSTUtil(struct node* node, int min, int max) {</tt><br />
<tt>  if (node==NULL) return(true);</tt></p>
<p><tt>  // false if this node violates the min/max constraint</tt><br />
<tt>  if (node-&#62;data&#60;min &#124;&#124; node-&#62;data&#62;max) return(false);</tt></p>
<p><tt>  // otherwise check the subtrees recursively,</tt><br />
<tt>  // tightening the min or max constraint</tt><br />
<tt>  return</tt><br />
<tt>    isBSTUtil(node-&#62;left, min, node-&#62;data) &#38;&#38;</tt><br />
<tt>    isBSTUtil(node-&#62;right, node-&#62;data+1, max)</tt><br />
<tt>  );</tt><br />
<tt>}</tt><br />
 </p>
<h3>15. TreeList</h3>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Sejarah ALGORITMA]]></title>
<link>http://smancawas.wordpress.com/2009/07/17/sejarah-algoritma/</link>
<pubDate>Fri, 17 Jul 2009 06:17:18 +0000</pubDate>
<dc:creator>d12kt</dc:creator>
<guid>http://smancawas.wordpress.com/2009/07/17/sejarah-algoritma/</guid>
<description><![CDATA[Algortima adalah jantung ilmu computer atau informatika. Banyak cabang dari ilmu komputer yang diacu]]></description>
<content:encoded><![CDATA[Algortima adalah jantung ilmu computer atau informatika. Banyak cabang dari ilmu komputer yang diacu]]></content:encoded>
</item>
<item>
<title><![CDATA[090717-playing with the power of python (MAYA)]]></title>
<link>http://escripto.wordpress.com/2009/07/17/090717-playing-with-the-power-of-python-maya/</link>
<pubDate>Fri, 17 Jul 2009 05:38:58 +0000</pubDate>
<dc:creator>escripto</dc:creator>
<guid>http://escripto.wordpress.com/2009/07/17/090717-playing-with-the-power-of-python-maya/</guid>
<description><![CDATA[
Yesterday i started to play some hours with mel , but i remembered the recomendations of rodrigo cu]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://escripto.wordpress.com/files/2009/07/python.jpg"><img class="alignnone size-full wp-image-447" title="python" src="http://escripto.wordpress.com/files/2009/07/python.jpg" alt="python" width="400" height="320" /></a></p>
<p>Yesterday i started to play some hours with mel , but i remembered the recomendations of rodrigo culagovski (www.culagovski.net &#8211; www.parametrica.org) about the benefits and advantages of python. So, i stopped with mel and put my hands into python.</p>
<p><!--more--></p>
<p><a href="http://escripto.wordpress.com/files/2009/07/py.jpg"><img class="alignnone size-full wp-image-448" title="py" src="http://escripto.wordpress.com/files/2009/07/py.jpg" alt="py" width="400" height="320" /></a></p>
<p><a href="http://escripto.wordpress.com/files/2009/07/py2.jpg"><img class="alignnone size-full wp-image-449" title="py2" src="http://escripto.wordpress.com/files/2009/07/py2.jpg" alt="py2" width="400" height="236" /></a></p>
<p>im just starting with this , so im not to excited yet with the results (im waiting for better implementation of python in rhino 5), but i was able to do some simple triangle panels on a surface.</p>
<p><a href="http://escripto.wordpress.com/files/2009/07/py4.jpg"><img class="alignnone size-full wp-image-450" title="py4" src="http://escripto.wordpress.com/files/2009/07/py4.jpg" alt="py4" width="400" height="236" /></a></p>
<p>some guy told me once &#8220;show me the code&#8221;, so&#8230;</p>
<p>import maya.cmds as mc<br />
srf = mc.ls(sl=True)<br />
umin = mc.getAttr (&#8217;arrObj.minValueU&#8217;)<br />
umax = mc.getAttr (&#8217;arrObj.maxValueU&#8217;)<br />
vmin = mc.getAttr (&#8217;arrObj.minValueV&#8217;)<br />
vmax = mc.getAttr (&#8217;arrObj.maxValueV&#8217;)<br />
numlist=12<br />
Div= 12<br />
arrpt=[]<br />
for i in range(numlist):<br />
arrpt.append([0]*Div)<br />
for x in range (numlist):<br />
for y in range (Div):<br />
arrparamU= umin + x *(umax-umin)/Div<br />
arrparamV= vmin + y *(vmax-vmin)/Div<br />
arrpt[x][y]= mc.pointOnSurface (srf[0],u=arrparamU,v=arrparamV,top=True)<br />
for x in range (1,Div,1):<br />
for y in range (1,Div,1):<br />
crv1= mc.curve(d=1,p=[(arrpt[x-1][y-1]),(arrpt[x-1][(y)]),(arrpt[(x)][(y)]),(arrpt[x-1][y-1])])<br />
crv2= mc.curve(d=1,p=[(arrpt[x-1][y-1]),(arrpt[(x)][(y)]),(arrpt[x][y-1]),(arrpt[x-1][y-1])])<br />
mc.planarSrf( crv1,d=1 )<br />
mc.delete (crv1)<br />
mc.planarSrf( crv2,d=1 )<br />
mc.delete (crv2)</p>
<p>after some hours learning some basic stuff  of the sintax of python, i think i´m able to work on some really cool stuff (not this basic boring stuff, hahaha)</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[People and Algorithms]]></title>
<link>http://hevsshe.wordpress.com/2009/07/16/people-and-algorithms/</link>
<pubDate>Fri, 17 Jul 2009 03:56:25 +0000</pubDate>
<dc:creator>hevsshe</dc:creator>
<guid>http://hevsshe.wordpress.com/2009/07/16/people-and-algorithms/</guid>
<description><![CDATA[SEO specialists provide an interesting role in our modern world.  Proper search engine optimization ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>SEO specialists provide an interesting role in our modern world.  Proper search engine optimization requires you to understand both algorithms and people.</p>
<p>If you understand people but <strong>not</strong> algorithms, you&#8217;ll build a perfect page that no one can find.</p>
<p>However, if you understand algorithms but not people, you&#8217;ll build an easily found page that no one wants to use.</p>
<p>In my time on the web, I&#8217;ve seen both kinds of pages.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Archiving Angels ... ]]></title>
<link>http://mumicimo.wordpress.com/2009/07/16/archiving-angels/</link>
<pubDate>Thu, 16 Jul 2009 16:36:07 +0000</pubDate>
<dc:creator>mumicimo</dc:creator>
<guid>http://mumicimo.wordpress.com/2009/07/16/archiving-angels/</guid>
<description><![CDATA[
Archiving Angels hover over as we educate the algorithm with love.


Here is a headless girl who sa]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><strong><br />
<blockquote>Archiving Angels hover over as we educate the algorithm with love.
</p></blockquote>
<p></strong></p>
<p><strong>Here is a headless girl who satisfies all aesthetic. </strong><br />
<div id="attachment_296" class="wp-caption alignright" style="width: 410px"><a href="http://mumicimo.wordpress.com/2009/07/16/archiving-angels/nikeofsamothrace_c440bce/" rel="attachment wp-att-296"><img src="http://mumicimo.wordpress.com/files/2009/07/nikeofsamothrace_c440bce.jpg" alt="Nike of Samothrace circa 440BCE courtesy of LOUVRE paris, and early Greek aesthetics." title="NikeOfSamothrace_c440BCE" width="400" height="655" class="size-full wp-image-296" /></a><p class="wp-caption-text">Nike of Samothrace circa 440BCE courtesy of LOUVRE paris, and early Greek aesthetics.</p></div></p>
<p>SEE also: Archiving Angels&#8230; [page]</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Math Test]]></title>
<link>http://unwedandunderfed.wordpress.com/2009/07/16/math-test/</link>
<pubDate>Thu, 16 Jul 2009 06:07:47 +0000</pubDate>
<dc:creator>unwedandunderfed</dc:creator>
<guid>http://unwedandunderfed.wordpress.com/2009/07/16/math-test/</guid>
<description><![CDATA[On a recent date, as my beau gulped at the bill, I thought to myself, “Aw Christ, now I have to blow]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>On a recent date, as my beau gulped at the bill, I thought to myself, “Aw Christ, now I have to blow him.”  There’s a good reason it’s called a sexual favor; unless you reeaallyy like the guy, it is wholly unappetizing.   And I am simply marking time and gathering fodder for this very blog with this poor lad (there is no parallel for guys because they aren’t required to shove anything past their epiglottis.  Pansies).<br />
But this acknowledgement of owing him something got me thinking about the role numbers play in dating; there’s your phone number, number of past sex partners, number of dates before you decide to either bang him or bail on him, and of course, the number I currently found myself calculating— price point.  For example, my date this evening seems to think that X amount of money entitles him to a goodnight kiss before I turn into a pumpkin at midnight.  And I think I need some sort of complicated algorithm to decipher the code, because every man seems to have a different idea of what an expensive date is (you’d think it is directly proportional to how much money he makes, right?  Not so!  It seems to be more about how much money Mommy and Daddy give him for allowance every week…).<br />
Crass as it may be to discuss, even perfect gentlemen do expect something in return after taking a lady out.  I like to think they’re in it for the pleasure of my company.  But a brutally honest male friend recently laid it out for me.  “Dixie,” he sighed, “if you let a guy take you out, if you let him pay, he wants to fuck you.” I could get up on my high horse about this, but the fact is, he’s right.  So after a date or two, I make it explicitly clear to every guy I see that I am looking for something casual, and that I am dating a wide variety of men.  I will not be his girlfriend.  And I’m not personally someone who can handle sleeping around without getting emotionally attached.  Ergo, no dice, buddy.  I like to end that conversation with a chipper, “Take it or leave it.”  Amazingly, no one ever leaves it.  At first it was flattering, but I’ve recently realized that these guys seem to think I’m issuing a personal challenge.  I do like playing hard to get, but when it comes to sex I’m incredibly picky about whom I engage.  Yet for all my big talk, I recognize that the art of bargaining has a role here.  Tonight’s contestant clearly finds his investment in my company worth at least a goodnight kiss.  That’s totally fine, because he is kissable, but I know that if I want to avoid some serious whining, and keep him happy, I need to suck it up (sorry, couldn’t resist;).<br />
On a first date few guys will bat an eye about picking up the tab.  But after a few tete-a-tetes sans tits, they get antsy.  I understand it, even if I’m mildly insulted.  </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Time integration again]]></title>
<link>http://takisword.wordpress.com/2009/07/14/time-integration-again/</link>
<pubDate>Tue, 14 Jul 2009 23:01:57 +0000</pubDate>
<dc:creator>Yi Zhang</dc:creator>
<guid>http://takisword.wordpress.com/2009/07/14/time-integration-again/</guid>
<description><![CDATA[In the post time integration: incompressible flow I explained a scheme example using PFEM. I don]]></description>
<content:encoded><![CDATA[In the post time integration: incompressible flow I explained a scheme example using PFEM. I don]]></content:encoded>
</item>
<item>
<title><![CDATA[Building Links]]></title>
<link>http://buildinglinks.wordpress.com/2009/07/13/building-links/</link>
<pubDate>Mon, 13 Jul 2009 12:50:14 +0000</pubDate>
<dc:creator>buildinglinks</dc:creator>
<guid>http://buildinglinks.wordpress.com/2009/07/13/building-links/</guid>
<description><![CDATA[Different search engines use a method of determining the websites that would be presented in the sea]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignleft size-full wp-image-6" title="natural-links" src="http://buildinglinks.wordpress.com/files/2009/07/natural-links.gif" alt="natural-links" width="280" height="254" />Different <strong>search engines</strong> use a method of determining the websites that would be presented in the search page.  This method is actually known as the link popularity algorithm wherein the ranking of a website is determined by the number of links that lead to a particular webpage.  Therefore, in order to establish ones website in the highest rankings, it is important to establish links.  The difficult task however lies on building links.  Although there are a number of different methods of link building &#38; <strong><a href="http://www.wmhaven.com/">link building services</a></strong>, the big question is really on how to build these links.</p>
<p><strong>Building links</strong> is a skill that can be developed.  There are actually limitless boundaries on the extent and possibilities of link building.  However, as in any case, not all possibilities work for certain websites, such that it is very vital to determine the best approach that would work for you.  Here are some tips that may prove helpful in building links:<br />
<img class="alignleft size-full wp-image-5" title="article Submission" src="http://buildinglinks.wordpress.com/files/2009/07/article-submission.gif" alt="article Submission" width="486" height="422" />Start a List.  The most basic thing that one could do in building links is making a list. This list would contain the materials that you will need for building links.  These materials include articles, resource lists for specific topics, and gurus list.  These would comprise your prospect links.   The <strong><a href="http://www.wmhaven.com/article_submission_service.html">articles</a></strong> might be on tips, or methods, or clues. This is so because, these tenor of writing are the easiest way for people to relate to.  Therefore, if these articles could answer simple questions that people may ask in their daily endeavors, then you can establish the link already.  The gurus could aid in <strong>link building</strong> if you would be able to impress them enough to have them include you as one of their links.<br />
<span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/zkW2tSZm03k&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/zkW2tSZm03k&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span>Establish Easy Accessibility.  In building links, it is very important that a lot of people can relate to what you are trying to convey.  Therefore, the need for simplicity and conciseness in the content is a must.  Moreover, if you want authoritative people to link to your site, you have to be very careful with grammatical errors, and spelling errors.  You will have to remember that in order to have more links; a lot of people should be enticed into your page.  In addition, it is also important to exude an aura of trust and credibility.</p>
<p>Give Time for Reviews.  The internet is a social market where there are different products and services that are being offered.  One must take note though that not all of these products are well established, therefore if you take time for reviews on these products, it could help in building links.  If you do product reviews, these products will therefore link to your site for people to be able to read the review.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Partition An Integer n to an arithmetic series]]></title>
<link>http://leeduhem.wordpress.com/2009/07/12/partition-an-integer-n-to-an-arithmetic-series/</link>
<pubDate>Sun, 12 Jul 2009 04:15:13 +0000</pubDate>
<dc:creator>leeduhem</dc:creator>
<guid>http://leeduhem.wordpress.com/2009/07/12/partition-an-integer-n-to-an-arithmetic-series/</guid>
<description><![CDATA[Give a positive integer n, generate all partition of n to an arithmetic series with common differenc]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Give a positive integer n, generate all partition of n to an arithmetic series with common difference 1.</p>
<p>First, a straightforward solution:</p>
<pre name="code" class="python">

import Data.List (find)
import Data.Maybe (catMaybes)

-- partition positive integer n to an arithmetic series
partitionToArithmetic0 n = catMaybes $ map partition [1..(n-2)]
    where
        partition x = let ys = [x..(n-1)] in
            case find (p x) ys of
                Just y  -&gt; Just (x, y)
                Nothing -&gt; Nothing

        p x y
            &amp;#124; (x+y) * (y-x+1) == 2 *n = True
            &amp;#124; otherwise               = False
</pre>
<p>Second, a not so straightforward solution, but much more effective than the first:</p>
<pre name="code" class="python">

partitionToArithmetic1 n = catMaybes $ map partition [2..hh]
    where
        hh = floor $ sqrt $ fromIntegral $ 2*n

        partition h
            &amp;#124; not $ s &gt; d = Nothing
            &amp;#124; not $ or [ hr /= 0 &amp;&amp; nh == 0, hr == 0 &amp;&amp; 2*nh == h] = Nothing
            &amp;#124; otherwise = Just (s-d, s+d1)
          where
            s = n `div` h
            d = (h-1) `div` 2
            d1 = d + (if even h then 1 else 0)
            hr = h `rem` 2
            nh = n `rem` h
</pre>
<p>You can check these two solutions are equal (upto n) by</p>
<pre name="code" class="python">

test u = and $ map (\n -&gt; (reverse $ partitionToArithmetic0 n) == partitionToArithmetic1 n) [1..u]
</pre>
<p>Exercise: Prove solution two is right.<br />
Answer:<br />
Let hight (or length) of an arithmetic series partition of a positive integer n is h, and</p>
<pre>
    s  = n/h - (n % h)
    d  = floor( (h-1) / 2)
    d1 = d + (if even h then 1 else 0)
</pre>
<p>We&#8217;ll prove it by three steps. </p>
<p>Step 1, [s-d .. s+d1] is an arithmetic series partition of the positive integer n.</p>
<pre>
    (s-d + s+d+[even h]) (s+d+[even h] - (s-d) + 1) / 2
    = (2*s + [even h]) (2*d + [even h] + 1) /2
    = (2*s + [even h]) * h / 2
    = n - (n % h) + [even h] * h / 2

    If [even h] * h = 2 * (n % h), we have sum [s-d .. s+d1] = n.
    ([even h] = if even h then 1 else 0)
</pre>
<p></p>
<p>Step 2, an arithmetic series partition of the positive integer n can be write as [s-d .. s+d1]. </p>
<p>To prove this, we only need to prove that s = n/h &#8211; (n%h)/h.</p>
<pre>
    (s-d + s+d+[even h]) (s+d+[even h] - (s-d) + 1) / 2 = n
</pre>
<p>so</p>
<pre>
    s = n/h - [even h]/2
</pre>
<p>Because [even h] * h = 2 * (n % h), so we have s = n/h &#8211; (n % h)/h.</p>
<p>Step 3, h &#60;= sqrt (2*n).</p>
<p>For partition n = h + (h-1) + &#8230; + 2 + 1, h get maximum value.</p>
<pre>
    (2 + (h-1)) * h / 2 &#62;= n
</pre>
<p>so</p>
<pre>
    h * (h+1) &#62;= 2*n
</pre>
<p>If h = sqrt (2*n), h * (h + 1) = 2*n + sqrt (2*n) &#62; 2*n.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[090711-parametric bridge - Thesis Final project-]]></title>
<link>http://escripto.wordpress.com/2009/07/11/090711-parametric-bridge-thesis-final-project/</link>
<pubDate>Sat, 11 Jul 2009 06:09:21 +0000</pubDate>
<dc:creator>escripto</dc:creator>
<guid>http://escripto.wordpress.com/2009/07/11/090711-parametric-bridge-thesis-final-project/</guid>
<description><![CDATA[
Some images from my final project for my master degree thesis. its a parametric bridge with a param]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://escripto.wordpress.com/files/2009/07/01.jpg"><img class="alignnone size-full wp-image-438" title="01" src="http://escripto.wordpress.com/files/2009/07/01.jpg" alt="01" width="400" height="175" /></a></p>
<p>Some images from my final project for my master degree thesis. its a parametric bridge with a parametric skin &#8211; (hexatect). All the project it´s defined by scripting (rhinoscript) and some specific grasshopper definitions (vb.net) .</p>
<p><!--more--></p>
<p>I finally presented my thesis (to get the architect title and a master degree (2&#215;1 super combo, hahaha) last month, and i got the maximum calification ( 7.0 out of 7.0!!!). im still celebrating , so when the celebration stops, i will post my thesis in PDF and the most important rhinoscript tools that i wrote for the projects.</p>
<p>stay tuned to eSCRIPT-O</p>
<p><a href="http://escripto.wordpress.com/files/2009/07/02.jpg"><img class="alignnone size-full wp-image-439" title="02" src="http://escripto.wordpress.com/files/2009/07/02.jpg" alt="02" width="400" height="175" /></a></p>
<p><a href="http://escripto.wordpress.com/files/2009/07/untitled-1.jpg"><img class="alignnone size-full wp-image-440" title="Untitled-1" src="http://escripto.wordpress.com/files/2009/07/untitled-1.jpg" alt="Untitled-1" width="400" height="175" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Beyond the box]]></title>
<link>http://artofscience.wordpress.com/2009/07/10/beyond-the-box/</link>
<pubDate>Fri, 10 Jul 2009 16:15:31 +0000</pubDate>
<dc:creator>scientiste</dc:creator>
<guid>http://artofscience.wordpress.com/2009/07/10/beyond-the-box/</guid>
<description><![CDATA[From SEED Magazine:
A new breed of architectural objects, inspired by theoretical science, is changi]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>From SEED Magazine:</p>
<p>A new breed of architectural objects, inspired by theoretical science, is changing how we think about building and what counts as art.</p>
<p>“<a href="http://www.tba21.org/program/current">Transitory Objects</a>,” the latest exhibit at Vienna’s influential <a href="http://www.tba21.org/">Thyssen-Bornemisza Art Contemporary</a> gallery, features some of the most innovative and splendidly unconventional forms coming out of the architectural world today, including works from <a href="http://seedmagazine.com/designseries/matthew-ritchie.html">Matthew Ritchie</a>, <a href="http://revminds.seedmagazine.com/revminds/member/neri_oxman/">Neri Oxman</a>, Alisa Andrasek, François Roche, <a href="http://seedmagazine.com/designseries/greg-lynn.html">Greg Lynn</a>, and Hernan Diaz Alonso. To have these mesmerizing structures together in one exhibit is remarkable in itself, but to have them positioned alongside works of contemporary art, as this exhibit has done, raises a provocative point about how boundaries have collapsed between architectural objects, conceptual art, and theoretical science. The exhibit aims to look at those architectural works that “have achieved an appearance of being autonomous forms,” says curator Daniela Zyman, suggesting that these works are meaningful outside of a specific context or place.</p>
<p>Ritchie, Oxman, Roche, and their colleagues split deeply from the finite, permanent, and utilitarian tradition of architecture. Not to say their end products are not useful or habitable. In fact, their structures are arguably better suited to the constantly morphing, impermanent, and aesthetically driven needs and desires of modern society. Rather than working with an end product or useful context in mind, they focus on the process of producing a structure that follows certain laws or principles. These resulting objects rise from computational models and algorithms whose inputs are being drawn from or at least inspired by some of the most boundary-pushing and abstract ideas in science, like quantum physics or the multiverse theory.</p>
<p>“Transitory Objects” includes two elegant models from <a href="http://www.biothing.org/wiki/doku.php">Alisa Andrasek/BIOTHING</a> that are part of a design project called “Mesonic Emission,” a reference to mesons, subatomic particles composed of quarks. These designs are made from an algorithm that is based on behaviors of electro-magnetic fields and is sophisticated enough to respond to the shape of the environment and to “grow” around obstructing objects. [For details about the algorithm, click <a href="http://artofscience.wordpress.com/wp-admin/%7BURL%20http://www.biothing.org/wiki/doku.php?id=seroussi:about}">here</a>].</p>
<p><a title="seed magazine: building without walls" href="http://seedmagazine.com/content/article/building_without_walls/">Read the full article</a>.</p>
<p><a href="http://seedmagazine.com/content/article/building_without_walls/"><img class="alignnone" src="http://www.seedmagazine.com/images/uploads/TransitObjects_Biothing_640x360.jpg" alt="" width="640" height="360" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[An introduction to Bezier Curves]]></title>
<link>http://gurumeditations.wordpress.com/2009/07/07/122/</link>
<pubDate>Wed, 08 Jul 2009 00:48:43 +0000</pubDate>
<dc:creator>imaginaryhuman</dc:creator>
<guid>http://gurumeditations.wordpress.com/2009/07/07/122/</guid>
<description><![CDATA[I just added a new article, an introduction to bezier curves, which you can read here. It covers som]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I just added a new article, an introduction to bezier curves, which <a href="http://gurumeditations.wordpress.com/articles/calculating-and-drawing-bezier-curves-with-blitzmax/">you can read here</a>. It covers some theory about bezier curves, how to calculate them, an algorithm and some useful sourcecode.</p>
<p>I wrote this as part of a first publication at a new Blitz magazine website, <a href="http://www.blitzmaxcoder.com">blitzmaxcoder.com</a> &#8211; which is currently going through a birthing process. I thought it would be a good idea to share it with the world here as well.</p>
<p>Of course, this means that I had to add a new section to the site &#8211; Articles &#8211; just click on the tab above <img src='http://s.wordpress.com/wp-includes/images/smilies/face-smile.png' alt=':-)' class='wp-smiley' /> </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Geek News for Tuesday, July 7, 2009]]></title>
<link>http://geeknewstoday.wordpress.com/2009/07/07/geek-news-for-tuesday-july-7-2009/</link>
<pubDate>Tue, 07 Jul 2009 22:46:25 +0000</pubDate>
<dc:creator>gntjake</dc:creator>
<guid>http://geeknewstoday.wordpress.com/2009/07/07/geek-news-for-tuesday-july-7-2009/</guid>
<description><![CDATA[Stan Lee in Thor, Gatchaman&#8217;s trailer, your SSN and more in today&#8217;s geek news.
MOVIE NEW]]></description>
<content:encoded><![CDATA[Stan Lee in Thor, Gatchaman&#8217;s trailer, your SSN and more in today&#8217;s geek news.
MOVIE NEW]]></content:encoded>
</item>
<item>
<title><![CDATA[:: Educate :: the :: Algorithm :: ]]></title>
<link>http://mumicimo.wordpress.com/2009/07/07/educate-the-algorithm/</link>
<pubDate>Tue, 07 Jul 2009 03:44:37 +0000</pubDate>
<dc:creator>mumicimo</dc:creator>
<guid>http://mumicimo.wordpress.com/2009/07/07/educate-the-algorithm/</guid>
<description><![CDATA[::Educate::the::algorithm::
::with::love::
&#8230;
to be continued
obviously.
  
(c) Etta B Dickerso]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><strong>::Educate::the::algorithm::</strong><br />
<strong>::with::love::</p>
<p>&#8230;<br />
to be continued<br />
obviously.<br />
 <img src='http://s.wordpress.com/wp-includes/images/smilies/face-smile.png' alt=':)' class='wp-smiley' /> </strong></p>
<p>(c) Etta B Dickerson, 2009</p>
<p><strong>check out a new way to archive yourself&#8230;a knowledge base project.</strong><br />
<a href="http://knol.google.com/k/etta-b-dickerson/book-of-etta-educatethealgorithm/1yigs1zjh65lr/2#">&#8230;a knol is a knoll is a knol&#8230;</a></p>
<div id="attachment_288" class="wp-caption alignright" style="width: 510px"><a href="http://mumicimo.wordpress.com/2009/07/07/educate-the-algorithm/etta_3jul09v5/" rel="attachment wp-att-288"><img src="http://mumicimo.wordpress.com/files/2009/07/etta_3jul09v5.gif" alt="~nocturnal awake+asleep at computer~~" title="etta_3JUL09V5" width="500" height="470" class="size-full wp-image-288" /></a><p class="wp-caption-text">~nocturnal awake+asleep at computer~~</p></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[New algorithm guesses Social Security Numbers]]></title>
<link>http://scottnolansmith.wordpress.com/2009/07/06/new-algorithm-guesses-ssns/</link>
<pubDate>Mon, 06 Jul 2009 23:24:18 +0000</pubDate>
<dc:creator>Scott Nolan Smith</dc:creator>
<guid>http://scottnolansmith.wordpress.com/2009/07/06/new-algorithm-guesses-ssns/</guid>
<description><![CDATA[Two researchers have found that a pair of antifraud methods intended to increase the chances of dete]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignright size-full wp-image-1517" style="margin:5px;" title="social_security_number" src="http://scottnolansmith.wordpress.com/files/2009/07/social_security_number.jpg" alt="social_security_number" width="137" height="112" /><em>Two researchers have found that a pair of antifraud methods intended to increase the chances of detecting bogus social security numbers has actually allowed the statistical reconstruction of the number using information that many people place on social networking sites.</em></p>
<p style="text-align:right;">Read the full article on <a href="http://arstechnica.com/tech-policy/news/2009/07/social-insecurity-numbers-open-to-hacking.ars" target="_blank">Ars Technia</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Tea-Tale 1]]></title>
<link>http://lynnpriestley.wordpress.com/2009/07/07/tea-tale-1/</link>
<pubDate>Mon, 06 Jul 2009 22:40:14 +0000</pubDate>
<dc:creator>Lynn Priestley</dc:creator>
<guid>http://lynnpriestley.wordpress.com/2009/07/07/tea-tale-1/</guid>
<description><![CDATA[ 

 
Äs I sit and drink tea in my break, I ask my colleagues for six words each. From these words co]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:left;"> </p>
<p style="text-align:left;margin:13px 0;padding:0;"><img class="alignleft size-thumbnail wp-image-108" title="tea-cup" src="http://lynnpriestley.wordpress.com/files/2009/07/tea-cup.jpg?w=150" alt="tea-cup" width="150" height="115" /></p>
<p style="text-align:left;margin:13px 0;padding:0;"> </p>
<p style="text-align:center;margin:13px 0;padding:0;">Äs I sit and drink tea in my break, I ask my colleagues for six words each. From these words come a  tea-tale to be told. </p>
<p style="text-align:left;margin:13px 0;padding:0;"> </p>
<p style="text-align:left;margin:13px 0;padding:0;">Today’s words:</p>
<p style="text-align:left;"><span style="color:#008080;">6/7/09:   Pineapple, garage sale, light bulb, minor, algorithm, bikini, Cronulla, helmet, Neanderthal, mannequin</span></p>
<p><img style="float:left;border:0 initial initial;" title="north-cronulla" src="http://lynnpriestley.wordpress.com/files/2009/07/north-cronulla.jpg?w=150" alt="north-cronulla" width="150" height="83" />I sensed the shadow fall over my face. I opened my eyes, my pupils adjusting to the shape of Matilda, who was standing beside me.</p>
<p>&#8220;Mattie, you&#8217;re blocking my sun.&#8221; I lifted my head to complain as I flicked sand up her leg with my foot. She was oblivious to my plea with her earphones wedge firmly in place and her hand tightly wrapped around her new iPod. She moved rhythmically in time to an unheard tune. </p>
<p>I looked up at her Amazonian figure. She was clad in the world&#8217;s briefest <strong>bikini</strong>. Her skin was tanned and smooth over perfectly defined muscles. She shifted her weight from one long lean leg to the other, miming words as her body swayed in time to a silent beat. She was the beautiful one of our trio. She was the musketeer with the Bust of Fear. Her boobs were weapons of mass destruction. And she knew it. She snapped up guys with the blink of an almond shaped eye and broke hearts on a regular basis. She raked a lean bony hand through her hair, which fell in long blonde waves down her back. She scanned the beach; her head like a sideshow alley clown roving from one side to the other. Always looking. Always searching for the one. </p>
<p>Utilising her shadow for good, I rolled on my side and dipped my hand into the small esky that sat between Lucy and me. I fished through the containers and pulled out a chunk of fresh <strong>pineapple</strong>. I took a bite, the juice dribbling down my face and neck. The tide was rolling back in and seagulls dipped and swerved overhead. The smell of coconut oil drifted past and I took a deep breath. Another month and summer would be over. </p>
<p>I wiped at the <strong>pineapple</strong> juice and rested my head back down on my sandy-mound pillow. I could feel a sudden vibration under my head. I looked up and over, beyond where Lucy lay with her eyes shut tight, ignoring the world. A couple of lifesavers carried a surf ski between them, their feet digging hard into the sand, squeaking their way past us. The weight of the hull bulged muscles beneath their berry brown skin. &#8216;<strong>Cronulla</strong> SLSC&#8217; was printed down one side of the ski. </p>
<p>I watched them plough like human dune buggies, flicking back sand as they powered down to the water to slide into the foamy blueness. With the ski in the water, one hopped in and began paddling, leaving his mate behind, land locked as his feet formed watery graves in the sand. His mate waved and then watched, <strong>mannequin</strong> still, as the ski rose and fell to slice through the waves. </p>
<p>I turned back to Mattie, who was still blocking my sun and oblivious. I was surprised to see she was paying zero attention to the muscle man surf ski parade. She was staring toward the surf club, near where we&#8217;d parked the car.</p>
<p>&#8220;Mattie, get outta my sun,&#8221; I called. I nudged her with my foot.</p>
<p>&#8220;What?&#8221; she asked. She pulled an earphone plug from her head.</p>
<p>&#8220;You&#8217;re in my sun…shove over,&#8221;</p>
<p>She took a step to the left and shoved the earphone back in place, the rhythmic twisting taking over her body again as she stared up at the surf club.</p>
<p>&#8220;She&#8217;s in scan mode,&#8221; Lucy said, opening one eye and turning to look at me. Lucy clenched her fists and raised her index fingers, sweeping them in radar like arcs.</p>
<p>&#8220;Doot..doot.doot…doot….&#8217; she added, sounding more like a soviet sub. Lucy readjusted her skull on her mini-head rest. She&#8217;d bought it for five bucks in a<strong>garage sale</strong>. She&#8217;s the economist of the trio; the musketeer with the spending fear. There was no buying up big for her at the surf club canteen. Supplies for the day came from Lucy, and were neatly packed in the esky between us.</p>
<p>&#8220;So who&#8217;s she scanning for?&#8221; I asked quietly. I flipped over onto my belly and prepared myself for a scandalous side mouthed conversation.</p>
<p>&#8220;Probably the <strong>Neanderthal</strong> she met at Aiden&#8217;s party.&#8221; Aiden was Lucy&#8217;s cousin.</p>
<p>&#8220;No way…&#8221; I scooped up sand in my hand and watched as the grains sifted straight through my fingers. I missed Aiden&#8217;s party because of my grandmother&#8217;s eightieth birthday.</p>
<p>&#8220;Totally way…you should have seen them. Dis…gust…ing,&#8221; Lucy answered.</p>
<p>&#8220;God, another one bites the dust.&#8221; It was hard to take Mattie&#8217;s love life seriously. She wasn&#8217;t known for her fickle taste and came recommended for her abundant love.  A <strong>minor</strong> affliction, I suppose, when you looked like a Nordic goddess. Mattie had an <strong>algorithm</strong> for love. &#8216;Are they male-&#62; yes…do they adore me-&#62; yes…are they rich/exotic/drop dead gorgeous/ funny and charming-&#62; yes…then thou shall be mine and mine alone…until the next one comes along.&#8217; </p>
<p>I glanced up at the surf club. Some surfers had gathered by the guard rail fence near the club. The sound of a horn bleated out from the car park and was followed by the roar of a mean looking cycle that pulled up not far from the clubhouse. The bike&#8217;s engine died with a final growl and the rider swung himself from the seat and ambled toward the railing that separated the beach from the sidewalk. He pulled off his <strong>helmet</strong> and tugged at the zip on his jacket, unzipping it slowly as he parked one butt cheek against the fence rail. He tucked his <strong>helmet</strong> under one arm and slid his glasses from his face. His hair was dark and long and from what I could see, his face was slightly more menacing. Beside the surfers, he looked like an evil black crow perched among a nest of white bunnies; dangerously out of place. </p>
<p> Mattie&#8217;s legs appeared beside me. I watched as she moved away, breaking into a run up the beach. Her earphones were out and dangling, her secret beat escaping unheard into fresh air.</p>
<p>&#8220;Hey, where are you going?&#8221; I called to her. She turned and looked at me, walking backward through the sand. Her smiling face lit up like a <strong>light bulb</strong>.</p>
<p>&#8220;I&#8217;ll be back in a while,&#8221; she said, turning and breaking into her infamous Baywatch run. I watched as she climbed the stairs to the clubhouse. She passed by the surfers without a glance and headed straight toward Bikie Boy. He had lifted his butt off the rail and was walking toward her like a misplaced Hawaiian Hagrid.  </p>
<p>I winced as Mattie threw herself up against him, disappearing behind the black flap of his jacket.</p>
<p>&#8220;Mission control we have lift off…&#8221; I said to Lucy. Lucy opened her eyes and looked over at me. I nodded toward the happy couple. They were halfway down each other&#8217;s tracheas.  Lucy flipped over and stared as Mattie and Bikie boy stood mauling each other to death.</p>
<p>&#8220;God, he is a <strong>Neanderthal</strong>. You failed to mention he was a bikie,&#8221; I said, looking over at Lucy.</p>
<p>&#8221; That&#8217;s not the guy from the party,&#8221; she said.</p>
<p>&#8220;Who is it then?&#8221;</p>
<p>&#8220;Dunno but I think we&#8217;re about to find out,&#8221; she said.</p>
<p>I looked over to see Mattie and Bikie Boy heading down onto the sand. The ocean roared in the background and seagulls screeched overhead. The calm of the beach had suddenly been replaced with a feeling of dread. There was something not right. I pushed myself up from the sand and sat waiting. They made their way across the sand like explorers searching for treasure.</p>
<p>I wish I knew then what was at stake and how much we would all end up paying. I wish there was some way I could have known how wrong things were about to become.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[SMILE - Generative Music Synth]]></title>
<link>http://nezoomie.wordpress.com/2009/07/06/smile-generative-music-synth/</link>
<pubDate>Mon, 06 Jul 2009 10:12:41 +0000</pubDate>
<dc:creator>nezoomie</dc:creator>
<guid>http://nezoomie.wordpress.com/2009/07/06/smile-generative-music-synth/</guid>
<description><![CDATA[    
This is an old project I made for university with some colleagues. It&#8217;s made in Max/MSP a]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/8Kd11vkGHx4&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/8Kd11vkGHx4&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>This is an old project I made for university with some colleagues. It&#8217;s made in Max/MSP and it uses a simple generative algorithm to drive notes to 5 sound generators using FM synthesis. It can become addictive!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[ACM (UVa) : 439]]></title>
<link>http://tausiq.wordpress.com/2009/07/06/acm-uva-439/</link>
<pubDate>Mon, 06 Jul 2009 04:25:59 +0000</pubDate>
<dc:creator>Tausiq Ahmed</dc:creator>
<guid>http://tausiq.wordpress.com/2009/07/06/acm-uva-439/</guid>
<description><![CDATA[

#include &lt;stdio.h&gt;
#include &lt;queue&gt;
using namespace std;

struct node {
	int row;
	int]]></description>
<content:encoded><![CDATA[

#include &lt;stdio.h&gt;
#include &lt;queue&gt;
using namespace std;

struct node {
	int row;
	int]]></content:encoded>
</item>
<item>
<title><![CDATA[ACM (UVa) : 10699]]></title>
<link>http://tausiq.wordpress.com/2009/07/06/acm-uva-10699/</link>
<pubDate>Sun, 05 Jul 2009 19:12:19 +0000</pubDate>
<dc:creator>Tausiq Ahmed</dc:creator>
<guid>http://tausiq.wordpress.com/2009/07/06/acm-uva-10699/</guid>
<description><![CDATA[

#include &lt;stdio.h&gt;
#include &lt;math.h&gt;

int main ()
{
	int number;

	while ( scanf (]]></description>
<content:encoded><![CDATA[

#include &lt;stdio.h&gt;
#include &lt;math.h&gt;

int main ()
{
	int number;

	while ( scanf (]]></content:encoded>
</item>
<item>
<title><![CDATA[ACM (UVa) : 10664]]></title>
<link>http://tausiq.wordpress.com/2009/07/06/acm-uva-10664/</link>
<pubDate>Sun, 05 Jul 2009 19:07:37 +0000</pubDate>
<dc:creator>Tausiq Ahmed</dc:creator>
<guid>http://tausiq.wordpress.com/2009/07/06/acm-uva-10664/</guid>
<description><![CDATA[

package volume_CVI;

import java.util.Arrays;
import java.util.Scanner;
import java.util.StringTok]]></description>
<content:encoded><![CDATA[

package volume_CVI;

import java.util.Arrays;
import java.util.Scanner;
import java.util.StringTok]]></content:encoded>
</item>
<item>
<title><![CDATA[review of CG method:IV]]></title>
<link>http://takisword.wordpress.com/2009/07/03/review-of-cg-methodiv/</link>
<pubDate>Fri, 03 Jul 2009 08:48:19 +0000</pubDate>
<dc:creator>Yi Zhang</dc:creator>
<guid>http://takisword.wordpress.com/2009/07/03/review-of-cg-methodiv/</guid>
<description><![CDATA[I have shown that in method of conjuate direction, the searching directions are in some sense orthog]]></description>
<content:encoded><![CDATA[I have shown that in method of conjuate direction, the searching directions are in some sense orthog]]></content:encoded>
</item>
<item>
<title><![CDATA[ignore the man behind the GMAT curtain]]></title>
<link>http://gmatninja.com/2009/06/14/ignore-the-man-behind-the-gmat-curtain/</link>
<pubDate>Sun, 14 Jun 2009 21:35:02 +0000</pubDate>
<dc:creator>Charles  Bibilos</dc:creator>
<guid>http://gmatninja.com/2009/06/14/ignore-the-man-behind-the-gmat-curtain/</guid>
<description><![CDATA[Pretty much all of my students have, at some point or another, seen a really easy question on the GM]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Pretty much all of my students have, at some point or another, seen a really easy question on the GMAT, and had a mild panic attack as a result.  We all know that the test is adaptive; if, say, question #25 seems really easy, doesn’t that mean that the test-taker is doing really really badly?</p>
<p>No, of course not.</p>
<p>Well, okay… maybe.  If you’re doing really badly, you probably will see some really easy questions, particularly on the math section of the test.  But there are other possible explanations.  Chances are, you&#8217;ve heard them before; based on my experience, these familiar explanations still don&#8217;t prevent you from freaking out a little bit.</p>
<p>First of all, there are plenty of experimental questions on the GMAT test.  You might be kicking some serious butt, and then a complete softball comes your way.  Is it a sign that you weren&#8217;t really kicking butt?  Probably not.  You might just have received a little unscored nugget.  Answer the question as if it counts, and then put it out of your head.</p>
<p>I&#8217;m also convinced that the GMAT algorithms group questions by topic, and the test actually accounts for your performance on each topic.  You might have done wonderfully on the first, say, 12 questions on the GMAT, but then you miss your first geometry question.  Perhaps the test recalls that you screwed up on geometry, and then gives you an easy geometry question next time.  This is just speculation on my part, but I think it&#8217;s possible that seemingly easy questions might come at you when you&#8217;ve displayed weakness on a particular topic&#8211;even if you haven&#8217;t, in general, shown yourself to be a weak test-taker.</p>
<p>Most importantly, you should never worry about the difficulty level of the questions.  If a question seems easy, read it really, really carefully&#8211;it might not be as easy as you think, or you might be missing something crucial in the question.  And even if it is easy, why the hell would you want to waste your energy worrying about it?  Get the question right, and worry about your score at the end.</p>
<p>This might seem obvious to you, and this post is obviously just a little bit of nagging.  But it&#8217;s funny how many people apparently need to be reminded that they shouldn&#8217;t waste their time thinking about the algorithm and their score during the test.</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
