diff --git a/mo/web/templates/org_contest_solutions.html b/mo/web/templates/org_contest_solutions.html
index 490dd305b00a0bc000fc0b97c2318065a915d4e3..1772b747f66e422b95c846fee592465dfa061db0 100644
--- a/mo/web/templates/org_contest_solutions.html
+++ b/mo/web/templates/org_contest_solutions.html
@@ -39,14 +39,19 @@ Odkazem v záhlaví se lze dostat na podrobný výpis odevzdání všech účast
 {{ edit_form.csrf_token }}
 {% endif %}
 
+{% set sum_points = {} %}
+
 {% for i in range((tasks|length)//4 + (1 if (tasks|length)%4 > 0 else 0)) %}
 <div class="table-responsive">
 <table class="table table-bordered table-hover table-condensed">
-	<colgroup style="border-right: 2px #aaa solid;"><col span="2"></colgroup>
+	<colgroup><col span="2"></colgroup>
 	{% for task in tasks[4*i:4*(i+1)] %}
-	<colgroup style="border-right: 2px #aaa solid;"><col span="4"></colgroup>
+	<colgroup style="border-left: 2px #aaa solid;"><col span="4"></colgroup>
 	{% endfor %}
-	<colgroup><col></colgroup>
+	{% if loop.last %}
+		{% set last_loop = True %}
+	<colgroup style="border-left: 2px #aaa solid;"><col></colgroup>
+	{% endif %}
 	<thead>
 		<tr>
 			<th rowspan=2>Účastník
@@ -60,7 +65,9 @@ Odkazem v záhlaví se lze dostat na podrobný výpis odevzdání všech účast
 				</a>
 				{% endif %}
 			{% endfor %}
+			{% if last_loop %}
 			<th rowspan=2>Body celkem
+			{% endif %}
 		</tr>
 		<tr>
 			{% for task in tasks[4*i:4*(i+1)] %}<th title="Řešení">Ř<th title="Oprava">O<th title="Body">B<th title="Detail"><span class="icon">🔍</span>{% endfor %}
@@ -68,10 +75,10 @@ Odkazem v záhlaví se lze dostat na podrobný výpis odevzdání všech účast
 	</thead>
 	{% for pion in pions %}
 	{% set u = pion.user %}
+	{% do sum_points.setdefault(pion, []) %}
 	<tr class="state-{{ pion.state.name }}">
 		<th>{{ u|pion_link(contest.contest_id) }}
 		<td>{{ pion.state.friendly_name() }}
-		{% set sum_points = [] %}
 		{% for task in tasks[4*i:4*(i+1)] %}
 			{% if u.user_id in tasks_sols[task.task_id] %}
 				{% set sol = tasks_sols[task.task_id][u.user_id] %}
@@ -101,7 +108,7 @@ Odkazem v záhlaví se lze dostat na podrobný výpis odevzdání všech účast
 				<td class="success">
 					{% if sol.points is not none %}
 						{{ sol.points|decimal }}
-						{% if sum_points.append(sol.points) %}{% endif %}
+						{% do sum_points[pion].append(sol.points) %}
 					{% else %}
 						<span class="unknown">?</span>
 					{% endif %}
@@ -118,7 +125,9 @@ Odkazem v záhlaví se lze dostat na podrobný výpis odevzdání všech účast
 			{% endif %}
 					<a class="btn btn-xs btn-link icon" title="Detail řešení" href="{{ ctx.url_for('org_submit_list', user_id=u.user_id, task_id=task.task_id) }}">🔍</a>
 		{% endfor %}
-		<th>{{ sum_points|sum|decimal }}</th>
+		{% if last_loop %}
+		<th>{{ sum_points[pion]|sum|decimal }}</th>
+		{% endif %}
 	</tr>
 	{% endfor %}
 	<tfoot>
@@ -137,7 +146,9 @@ Odkazem v záhlaví se lze dostat na podrobný výpis odevzdání všech účast
 			<td>
 				<a class="btn btn-xs btn-primary" href="{{ ctx.url_for('org_contest_task', task_id=task.task_id) }}" title="Podrobný výpis odevzdaných řešení k úloze {{ task.code }}"><span class="glyphicon glyphicon-search"></span></a>
 		{% endfor %}
+		{% if last_loop %}
 		<td>
+		{% endif %}
 	</tfoot>
 </table>
 </div>