Пользователь
function createTable(a){var b=document.createElement("h2");b.textContent="Рейтинг по времени решения";var c=document.createElement("section");c.id="leaderboard";var d=document.createElement("table"),e=document.createElement("tbody");a.forEach(function(a){var b=document.createElement("tr");a.forEach(function(a){var c=document.createElement("td");c.appendChild(document.createTextNode(a)),b.appendChild(c)}),e.appendChild(b)}),d.appendChild(e),c.appendChild(b),c.appendChild(d),document.body.appendChild(c)}leaderboard=document.getElementById("leaderboard"),leadertable=leaderboard.getElementsByTagName("table")[0],rows=leaderboard.getElementsByTagName("tr");for(var users=[],regexp=/(\d+) ч (\d+).*?мин/,i=0;i<rows.length;i++){row=rows[i],cols=row.getElementsByTagName("td"),time_match=regexp.exec(cols[1].textContent);var minutes=NaN;if(time_match){minutes=60*parseInt(time_match[1])+parseInt(time_match[2]);var user=[cols[0].textContent,cols[1].textContent,cols[2].textContent,minutes];users.push(user)}}for(var rating_data=users.sort(function(a,b){return a[3]-b[3]}),rating_table=[],i=0;i<rating_data.length;i++)item=rating_data[i],rating_table.push([i+1,item[0],item[1],item[2]]);createTable(rating_table);
Может кому-то будет интересно посмотреть рейтинг по времени выполнения:
Скрипт создаст таблицу в конце страницы. Найти проще всего будет по заголовку «Рейтинг по времени решения».