khoe [Nhật ký] Chạy bộ mỗi ngày

  • Người tạo chủ đề Người tạo chủ đề EmYeuCrit
  • Ngày bắt đầu Ngày bắt đầu
Trạng thái
Không mở để trả lời thêm.
Hái hoa bắt bướm :LOL:
4oPTL64.jpg

eJ9b1Hb.jpg


Fen thích đi có carbon hay ko carbon. Nếu có carbon mà size 42 thì tôi có 1 đôi 361 flame 1.0 mới chạy 8 que

via theNEXTvoz for iPhone
Chán tàu rồi ah thím :ROFLMAO:

các bác chạy strategy là ban đầu chạy chậm rồi nước rút ạ
e toàn vô chạy hùng hục như con trâu 1km đầu có khi pace 3 luôn. sau đó cứ xuống dần đều, tất nhiên em vẫn keep để k rớt xuống mức quá tệ
e k biết giữa 2 chiến thuật thì cái nào hiệu quả hơn ạ
sorry em mới đến với môn này đc vài tháng thui ạ, chạy = bản năng
Nó như cái xe mới khởi động mà vít max ga sau này dễ róc máy, hở bạc xước xilanh do nhớt chưa được bơm lên kịp để bôi trơn. Thím tự điều chỉnh cho phù hợp với bản thân, chứ đây là ý kiến cá nhân mình thôi :D

Gửi từ Sam chắc chắn sung bằng vozFApp
 
Sửa lần cuối:
các bác chạy strategy là ban đầu chạy chậm rồi nước rút ạ
e toàn vô chạy hùng hục như con trâu 1km đầu có khi pace 3 luôn. sau đó cứ xuống dần đều, tất nhiên em vẫn keep để k rớt xuống mức quá tệ
e k biết giữa 2 chiến thuật thì cái nào hiệu quả hơn ạ
sorry em mới đến với môn này đc vài tháng thui ạ, chạy = bản năng
Việc chạy chậm lúc đầu giúp làm nóng cơ, quen dần nhịp độ cho tim hạn chế khả năng gãy giữa đường khi đi race :ah:. Đóng nhanh từ đầu thì cũng được nếu chọn đúng pace phù hợp, ko phái quá nhanh so với pace easy duy trì dc 80% tổng thời gian là ok vì, chạy negative split là kỹ năng năng khó đó ko phải đơn giản như positive.
 
Việc chạy chậm lúc đầu giúp làm nóng cơ, quen dần nhịp độ cho tim hạn chế khả năng gãy giữa đường khi đi race :ah:. Đóng nhanh từ đầu thì cũng được nếu chọn đúng pace phù hợp, ko phái quá nhanh so với pace easy duy trì dc 80% tổng thời gian là ok vì, chạy negative split là kỹ năng năng khó đó ko phải đơn giản như positive.
=)) a thấy Positive mới khó a chạy nhanh lúc đầu xong toàn gãy negative dễ thở hơn
 
:LOL: a thấy Positive mới khó a chạy nhanh lúc đầu xong toàn gãy negative dễ thở hơn
chạy nhanh lúc đầu sau gãy chạy chậm thì là positive chứ còn gì nữa, nó dễ vì lúc đầu ai chả nhanh dc :angry:. Negative khó vì dù nửa trước có chậm thì cơ thể nó cũng quen với cường độ, cũng mất tương đối sức rồi nên để đẩy pace lên là việc khá khó chứ ko dễ ,đẩy pace nhanh của ít nhất 30% tổng quãng đường còn lại, chứ 1 2 que cuối nước rút thì ko tính tiền
XGhGuGp.png
 
chạy nhanh lúc đầu sau gãy chạy chậm thì là positive chứ còn gì nữa, nó dễ vì lúc đầu ai chả nhanh dc :angry:. Negative khó vì dù nửa trước có chậm thì cơ thể nó cũng quen với cường độ, cũng mất tương đối sức rồi nên để đẩy pace lên là việc khá khó chứ ko dễ ,đẩy pace nhanh của ít nhất 30% tổng quãng đường còn lại, chứ 1 2 que cuối nước rút thì ko tính tiềnXem tệp đính kèm 2380706
Chậm nhưng ko được chậm quá, gãy là ko chạy đc duy trì nữa là gãy.

Negative là chạy nhanh dần về cuối chứ ko có nghĩa là tăng tốc đột ngột, như giải LBM đợt a chạy ntn cũng là negative này

1710298249509.png
 
Trạng thái
Không mở để trả lời thêm.
/* VOZ — in-thread ad spread, client-side. * * Lives in the Siropu Ads Manager unit on `thread_view_below_messages` (the ad below the * last post), pasted after that unit's own and display() call. This file is the * source of truth; the ACP copy is a paste of it. Ads Manager's user/device/geo criteria * on that unit gate the whole thing. * * What it does: inserts up to `max` ad slots between posts, spaced by screen height rather * than post count. Anchors are post 1 and the first unread post (XF marks it `is-unread`; * it wins over post 1 when the two are closer than a gap) — each only if at least one gap * above the ad below the last post. Every stretch between anchors, and down to that bottom * ad, then gets as many slots as fit at the gap, spread evenly, each on the nearest post * boundary that keeps the gap, up to the cap — stretches below the unread post take their * share first (the reader scrolls down from there). Slot ids, gap, reserved size and backup * are per breakpoint (desktop / mobile). Slots are inserted as empty reserved boxes * (`voz-adSlot`, see extra.less) before PubPower fills them, so nothing shifts when an ad * arrives; the same markup gives them the backup, the hide-on-load and the fit rules. * * Re-runnable: window.vozThreadSpread() removes what it inserted and recomputes. */ (function () { var CONFIG = { max: 3, mobileMaxWidth: 650, label: 'Quảng cáo', // Per breakpoint: PubPower slot ids, one per placement in page order (kept per // device so each device's placements report under their own ids); the minimum // distance between ads (and from the last one to the bottom ad) as viewport heights, // or a string like '1200px'; the reserved size (voz-adSlot--… in extra.less); and the // backup shown until an ad has loaded. The backup keeps class voz-adSlot-backup // (hide-on-load, click-through when unfilled); --raw drops the style's own box so the // markup inside shows as written. desktop: { slots: ['pw_44325', 'pw_44329', 'pw_44331'], gap: 2, sizeClass: 'voz-adSlot--leaderboard', backupHtml: '' + '
AD · 970×90
' + '
' }, mobile: { slots: ['pw_44325', 'pw_44329', 'pw_44331'], gap: 3, sizeClass: 'voz-adSlot--rectangleLarge', backupHtml: '' + '
AD · 336×280
' + '
' } }; var MARK = 'data-voz-spread'; var script = document.currentScript; function pageTop(el) { return el.getBoundingClientRect().top + window.pageYOffset; } function pageBottom(el) { return el.getBoundingClientRect().bottom + window.pageYOffset; } function breakpoint() { return window.matchMedia('(max-width: ' + CONFIG.mobileMaxWidth + 'px)').matches ? CONFIG.mobile : CONFIG.desktop; } function gapPx() { var g = breakpoint().gap; return typeof g === 'string' ? parseFloat(g) : g * window.innerHeight; } function bottomAd() { var el = script; while (el && !(el.classList && el.classList.contains('voz-adSlot'))) el = el.previousElementSibling; return el; } function unit(slotId) { var bp = breakpoint(); var wrap = document.createElement('div'); wrap.className = 'voz-adUnit'; wrap.setAttribute(MARK, ''); wrap.innerHTML = (CONFIG.label ? '
' + CONFIG.label + '
' : '') + '
' + bp.backupHtml + '' + '
'; return wrap; } function run() { var old = document.querySelectorAll('[' + MARK + ']'); for (var k = 0; k < old.length; k++) old[k].parentNode.removeChild(old[k]); var posts = Array.prototype.slice.call(document.querySelectorAll('.block--messages article.message--post')); if (posts.length < 2) return []; var gap = gapPx(); var bottom = bottomAd(); var bottomY = bottom ? pageTop(bottom) : pageBottom(posts[posts.length - 1]); var chosen = []; function fits(y) { if (bottomY - y < gap) return false; for (var i = 0; i < chosen.length; i++) if (Math.abs(chosen[i].y - y) < gap) return false; return true; } function take(post) { var y = pageBottom(post); if (!fits(y)) return false; chosen.push({ post: post, y: y }); return true; } var unread = -1; for (var i = 0; i < posts.length; i++) if (posts[i].classList.contains('is-unread')) { unread = i; break; } // Anchors: the unread post (if a gap above the bottom ad), then post 1 (if a gap // from both). Every stretch between consecutive anchors and the bottom ad then gets // as many slots as fit at the gap, spread evenly, each on the nearest post boundary. if (unread >= 0) take(posts[unread]); take(posts[0]); chosen.sort(function (a, b) { return a.y - b.y; }); var uy = unread >= 0 ? pageBottom(posts[unread]) : -1; var bounds = chosen.map(function (c) { return c.y; }).concat([bottomY]); var segments = []; for (var s = 0; s + 1 < bounds.length; s++) segments.push({ a: bounds[s], b: bounds[s + 1] }); // Stretches below the unread post take their share of the cap first (the reader // scrolls down from there), then the ones above it, top-down. segments.sort(function (x, y) { return (x.a >= uy ? 0 : 1) - (y.a >= uy ? 0 : 1) || x.a - y.a; }); for (var t = 0; t < segments.length; t++) { var a = segments[t].a, b = segments[t].b; var n = Math.min(Math.floor((b - a) / gap) - 1, CONFIG.max - chosen.length); for (var j = 1; j <= n; j++) { var target = a + j * (b - a) / (n + 1), best = null, bestD = Infinity; for (var q = 0; q < posts.length; q++) { var yq = pageBottom(posts[q]); if (yq <= a || yq >= b || !fits(yq)) continue; var d = Math.abs(yq - target); if (d < bestD) { bestD = d; best = posts[q]; } } if (best) take(best); } } chosen.sort(function (a, b) { return a.y - b.y; }); window.powerTag = window.powerTag || {}; var placed = []; var slots = breakpoint().slots; for (var p = 0; p < chosen.length; p++) { var id = slots[p % slots.length]; chosen[p].post.insertAdjacentElement('afterend', unit(id)); placed.push({ afterPost: posts.indexOf(chosen[p].post) + 1, slot: id }); (function (slotId) { (window.powerTag.Init = window.powerTag.Init || []).push(function () { window.powerAPITag.display(slotId); }); })(id); } return placed; } window.vozThreadSpread = run; run(); })();

Thống kê chủ đề

Ngày tạo
EmYeuCrit,
Người trả lời cuối
dev_xam_tro,
Trả lời
33.793
Lượt xem
2.412.683
Quay lại
Lên đầu trang