fredrsf,
Похоже на задачу как расставить ладьи на шахматной доске, чтобы они не били друг друга? )))
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
td{
height: 22px; width: 22px; text-align: center;
}
</style>
</head>
<body>
<script language="JavaScript" type="text/javascript">
for (var m = [], l = 10, b = ["background-color: #FFFF00;", "background-color: #00FF00;", "background-color: #FF0000;"],
t = document.createElement("table"), c = 0; c < l; c++) {
var tr = t.insertRow(c);
m[c] = c;
for (var s = 0; s < l; s++) tr.insertCell(s).style.cssText = b[0]
}
document.body.appendChild(t);
c = 0;
function go() {
for (s = 0; s < l; s++) t.rows[c].cells[s].style.cssText = b[1];
r = Math.floor(Math.random() * m.length);
r = m.splice(r, 1);
t.rows[c].cells[r].style.cssText = b[2];
for (s = ++c; s < l; s++) t.rows[s].cells[r].style.cssText = b[1];
c < l && setTimeout(arguments.callee, 600)
};
</script>
<input type="button" name="" value="go" onclick="go()"/>
</body>
</html>