Tugas · algoritma mudah JavaScript ·
Summary ranges
Given a sorted list of distinct integers, summarize it as consecutive ranges. A range of several numbers is written "a->b", a single number as "a". Return the ranges in order.
Tanda tangan
/**
* @param {number[]} nums
* @returns {string[]}
*/
function summary_ranges(nums)Contoh
summary_ranges([0, 1, 2, 4, 5, 7]) // -> ["0->2", "4->5", "7"]
summary_ranges([0, 2, 3, 4, 6, 8, 9]) // -> ["0", "2->4", "6", "8->9"]
summary_ranges([]) // -> []Ditambah 5 pengujian tersembunyi dan 2 pengujian input besar dengan batas waktu; inputnya tidak ditampilkan. Tugas diberikan kepada model dalam bahasa Inggris.
#1DeepSeek V4 Pro 0423tidak selesai · 9 dari 10 pengujianrespons dalam 8.9 dtk · waktu eksekusi 2.6 dtk · $0.0007 ✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 2 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] <1 md ✓ summary_ranges([])diharapkan [] 1 md ✓ 1 md✓ 1 md✓ <1 md✓ 1 md✓ 1 md⏱ batas waktu terlampaui⏱ 95 mdKode
/** * @param {number[]} nums * @returns {string[]} */ function summary_ranges(nums) { const result = []; const n = nums.length; if (n === 0) return result; let start = nums[0]; let prev = start; for (let i = 1; i < n; i++) { if (nums[i] === prev + 1) { prev = nums[i]; } else { result.push(start === prev ? `${start}` : `${start}->${prev}`); start = nums[i]; prev = start; } } result.push(start === prev ? `${start}` : `${start}->${prev}`); return result; }Percobaan kedua
tidak selesai · 9 dari 10 pengujianrespons dalam 5.6 dtk · $0.0009Model melihat berapa banyak tes yang gagal, contoh yang gagal beserta nilai yang diharapkan dan yang dihasilkan, serta hanya alasan mengapa tes tersembunyi gagal, bukan inputnya. Tidak memengaruhi peringkat atau rating.
✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 2 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] <1 md ✓ summary_ranges([])diharapkan [] <1 md ✓ <1 md✓ 1 md✓ <1 md✓ <1 md✓ <1 md⏱ batas waktu terlampaui⏱ 130 mdKode
/** * @param {number[]} nums * @returns {string[]} */ function summary_ranges(nums) { const result = []; const n = nums.length; if (n === 0) return result; let i = 0; while (i < n) { let start = nums[i]; let j = i + 1; while (j < n && nums[j] === nums[j-1] + 1) { j++; } let end = nums[j-1]; if (start === end) { result.push(start.toString()); } else { result.push(start + "->" + end); } i = j; } return result; }#1OpenAI GPT-6.1 Terratidak selesai · 9 dari 10 pengujianrespons dalam 2.2 dtk · waktu eksekusi 2.6 dtk · $0.0009 ✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 3 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] <1 md ✓ summary_ranges([])diharapkan [] <1 md ✓ <1 md✓ 1 md✓ <1 md✓ 6 md✓ 1 md⏱ batas waktu terlampaui⏱ 105 mdKode
function summary_ranges(nums) { const result = []; const n = nums.length; let i = 0; while (i < n) { const start = nums[i]; let end = start; i++; while (i < n && nums[i] - end === 1) { end = nums[i++]; } result.push(start === end ? String(start) : `${start}->${end}`); } return result; }Percobaan kedua
tidak selesai · 9 dari 10 pengujianrespons dalam 2.8 dtk · $0.0012Model melihat berapa banyak tes yang gagal, contoh yang gagal beserta nilai yang diharapkan dan yang dihasilkan, serta hanya alasan mengapa tes tersembunyi gagal, bukan inputnya. Tidak memengaruhi peringkat atau rating.
✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 1 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] <1 md ✓ summary_ranges([])diharapkan [] <1 md ✓ <1 md✓ 1 md✓ 1 md✓ <1 md✓ 1 md⏱ batas waktu terlampaui⏱ 127 mdKode
function summary_ranges(nums) { const n = nums.length; if (n === 0) return []; const result = []; let start = nums[0]; let prev = start; for (let i = 1; i < n; i++) { const value = nums[i]; if (value - prev !== 1) { result.push(start === prev ? String(start) : start + "->" + prev); start = value; } prev = value; } result.push(start === prev ? String(start) : start + "->" + prev); return result; }#1Qwen3.8 Max (0902)tidak selesai · 9 dari 10 pengujianrespons dalam 7.6 dtk · waktu eksekusi 2.6 dtk · $0.0026 ✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 1 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] <1 md ✓ summary_ranges([])diharapkan [] 1 md ✓ 3 md✓ 1 md✓ 1 md✓ 26 md✓ 1 md⏱ batas waktu terlampaui⏱ 97 mdKode
function summary_ranges(nums) { if (nums.length === 0) return []; const result = []; let start = nums[0]; let prev = nums[0]; for (let i = 1; i <= nums.length; i++) { if (i === nums.length || nums[i] !== prev + 1) { if (start === prev) { result.push(String(start)); } else { result.push(start + "->" + prev); } if (i < nums.length) { start = nums[i]; prev = nums[i]; } } else { prev = nums[i]; } } return result; }Percobaan kedua
tidak selesai · 9 dari 10 pengujianrespons dalam 9.5 dtk · $0.0039Model melihat berapa banyak tes yang gagal, contoh yang gagal beserta nilai yang diharapkan dan yang dihasilkan, serta hanya alasan mengapa tes tersembunyi gagal, bukan inputnya. Tidak memengaruhi peringkat atau rating.
✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 3 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] 1 md ✓ summary_ranges([])diharapkan [] <1 md ✓ <1 md✓ <1 md✓ <1 md✓ 4 md✓ 1 md⏱ batas waktu terlampaui⏱ 118 mdKode
function summary_ranges(nums) { const n = nums.length; if (n === 0) return []; const result = []; let i = 0; while (i < n) { let j = i; while (j + 1 < n && nums[j + 1] === nums[j] + 1) { j++; } if (i === j) { result.push(String(nums[i])); } else { result.push(nums[i] + "->" + nums[j]); } i = j + 1; } return result; }#1Mistral Devstral 2 2512tidak selesai · 9 dari 10 pengujianrespons dalam 1.2 dtk · waktu eksekusi 2.7 dtk · $0.0005 ✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 2 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] 2 md ✓ summary_ranges([])diharapkan [] <1 md ✓ <1 md✓ 1 md✓ 35 md✓ <1 md✓ <1 md⏱ batas waktu terlampaui⏱ 134 mdKode
function summary_ranges(nums) { if (nums.length === 0) return []; const ranges = []; let start = nums[0]; for (let i = 1; i < nums.length; i++) { if (nums[i] !== nums[i - 1] + 1) { if (start === nums[i - 1]) { ranges.push(start.toString()); } else { ranges.push(start + '->' + nums[i - 1]); } start = nums[i]; } } if (start === nums[nums.length - 1]) { ranges.push(start.toString()); } else { ranges.push(start + '->' + nums[nums.length - 1]); } return ranges; }Percobaan kedua
tidak selesai · 9 dari 10 pengujianrespons dalam 1.1 dtk · $0.0005Model melihat berapa banyak tes yang gagal, contoh yang gagal beserta nilai yang diharapkan dan yang dihasilkan, serta hanya alasan mengapa tes tersembunyi gagal, bukan inputnya. Tidak memengaruhi peringkat atau rating.
✓ summary_ranges([0, 1, 2, 4, 5, 7])diharapkan ["0->2", "4->5", "7"] 2 md ✓ summary_ranges([0, 2, 3, 4, 6, 8, 9])diharapkan ["0", "2->4", "6", "8->9"] <1 md ✓ summary_ranges([])diharapkan [] <1 md ✓ 5 md✓ 31 md✓ 1 md✓ 2 md✓ 4 md⏱ batas waktu terlampaui⏱ 134 mdKode
function summary_ranges(nums) { const ranges = []; let start = nums[0]; for (let i = 1; i <= nums.length; i++) { if (i === nums.length || nums[i] !== nums[i - 1] + 1) { ranges.push(start === nums[i - 1] ? start.toString() : start + '->' + nums[i - 1]); if (i < nums.length) start = nums[i]; } } return ranges; }
Biaya token: $0.01 · Cara babak dijalankan dan dinilai →