Skip to content

update: 添加问题“1848.到目标元素的最小距离”的代码和题解#1495

Merged
LetMeFly666 merged 1 commit intomasterfrom
1848
Apr 13, 2026
Merged

update: 添加问题“1848.到目标元素的最小距离”的代码和题解#1495
LetMeFly666 merged 1 commit intomasterfrom
1848

Conversation

@LetMeFly666
Copy link
Copy Markdown
Owner

By newSolution.py using GH on Windows | close: #1494

1848: AC.cpp+py+go+java+rust (#1494)

cpp - AC,100.00%,56.90%
py - AC,100.00%,57.69%
go - AC,100.00%,86.36%
java - AC,21.05%,75.44%
rust - AC,100.00%,80.00%

Signed-off-by: LetMeFly666 <Tisfy@qq.com>
@LetMeFly666 LetMeFly666 requested a review from Tisfy as a code owner April 13, 2026 14:10
@LetMeFly666 LetMeFly666 added the 题解 Solution label Apr 13, 2026
Copilot AI review requested due to automatic review settings April 13, 2026 14:10
@LetMeFly666 LetMeFly666 self-assigned this Apr 13, 2026
@LetMeFly666 LetMeFly666 added the under merge pr准备就绪 请做merge前最后的检查 label Apr 13, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds the solution code and written explanation for LeetCode 1848. 到目标元素的最小距离, updates the global index, and consolidates a previously standalone PowerPoint scaling script into the tips document.

Changes:

  • Add LeetCode 1848 solutions in C++/Python/Go/Java/Rust and the corresponding solution write-up.
  • Update README.md problem list and switch Codes/lib.rs to include the new Rust solution file.
  • Remove the standalone scale.vbs and append the macro plus related PPT notes to Other-Accumulation-SomeTips.md.

Reviewed changes

Copilot reviewed 12 out of 13 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
toSay.md Removes a single note line.
Solutions/Other-Accumulation-SomeTips.md Adds PPT-related tips and embeds the shape-scaling macro.
scale.vbs Deletes the standalone PPT scaling macro file (moved into tips).
README.md Adds the 1848 entry with links to the write-up.
Codes/lib.rs Points the Rust include to the 1848 solution file.
Codes/1848-minimum-distance-to-the-target-element.rs Adds Rust implementation for 1848.
Codes/1848-minimum-distance-to-the-target-element.py Adds Python implementation for 1848.
Codes/1848-minimum-distance-to-the-target-element.java Adds Java implementation for 1848.
Codes/1848-minimum-distance-to-the-target-element.go Adds Go implementation for 1848.
Codes/1848-minimum-distance-to-the-target-element.cpp Adds C++ implementation for 1848.
.commitmsg Updates the commit message metadata for the new problem.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Solutions/Other-Accumulation-SomeTips.md
Comment thread Solutions/Other-Accumulation-SomeTips.md
Copy link
Copy Markdown
Contributor

@gh-pr-review gh-pr-review Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR 概要

本 PR 为 LeetCode 1848「到目标元素的最小距离」添加了 C++/Python/Go/Java/Rust 五种语言的解题代码和配套题解文档,同时将独立的 scale.vbs 宏脚本整合到 Other-Accumulation-SomeTips.md 中,删除了 toSay.md 临时文件。


正确性分析

文件 语言 算法正确性 备注
1848-...cpp C++ ✅ 正确 线性遍历,逻辑无误
1848-...py Python ✅ 正确 一行版简洁优雅
1848-...go Go ✅ 正确 自定义 abs 函数,避免标准库缺失
1848-...java Java ✅ 正确 标准写法
1848-...rs Rust ✅ 正确 类型转换处理得当
README.md - ✅ 正确 新增条目位置正确,链接格式一致
lib.rs Rust ✅ 正确 include 路径已更新
Other-Accumulation-SomeTips.md - ⚠️ 有小问题 见下方 P2/P3

问题与建议

P2 - 中等问题

1. C++ 文件缺少末尾换行符 (No newline at end of file)

1848-...cpp.commitmsg 文件末尾缺少换行符。POSIX 标准要求文本文件以换行符结尾,部分编译器/工具会产生警告。

2. C++ ans 初始化存在隐式 signed/unsigned 转换

nums.size() 返回 size_t(无符号),赋值给 int ans 存在隐式窄化转换。虽然题目约束 nums.length <= 1000 不会溢出,但严格来说不够规范。

3. Other-Accumulation-SomeTips.md 中句子不完整

"选择完成后下次保存ppt时,就会将字体连同保存到" —— 此句缺少宾语,是未完成的半句话。

P3 - 建议优化

4. VBA 代码块语言标记应为 vba 而非 vbscript

该代码是 PowerPoint VBA 宏(使用了 ActivePresentationShape 等 VBA 宿主对象),标记为 vbscript 不够准确,会影响语法高亮。

5. 操作步骤中英文混用

步骤 1-4 中 "Open the VBA editor"、"input a script name" 等为英文,而上下文及标题均为中文,建议统一为中文以保持一致性。


总结

维度 评价
算法正确性 ✅ 五种语言实现均正确
代码风格 ✅ 良好,与项目既有风格一致
文档质量 ⚠️ 题解部分完整清晰;Tips 部分有未完成句子
文件组织 ✅ scale.vbs 整合到文档中是合理的

合并建议:建议修复 P2-3(不完整句子)后合并。其余为 minor 问题,不阻塞合并。

Review by AI Assistant

Comment thread Codes/1848-minimum-distance-to-the-target-element.cpp
Comment thread Codes/1848-minimum-distance-to-the-target-element.cpp
Comment thread .commitmsg
Comment thread Solutions/Other-Accumulation-SomeTips.md
Comment thread Solutions/Other-Accumulation-SomeTips.md
Comment thread Solutions/Other-Accumulation-SomeTips.md
Comment thread .commitTitleExtra
@LetMeFly666 LetMeFly666 removed the under merge pr准备就绪 请做merge前最后的检查 label Apr 13, 2026
@LetMeFly666 LetMeFly666 merged commit de70cf3 into master Apr 13, 2026
5 checks passed
@LetMeFly666 LetMeFly666 deleted the 1848 branch April 13, 2026 14:18
Copy link
Copy Markdown
Contributor

@gh-pr-review gh-pr-review Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

即将开始 gh-pr-review v0.2.x 的测试

Copy link
Copy Markdown
Contributor

@gh-pr-review gh-pr-review Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR 概要

本 PR 为 LeetCode 1848「到目标元素的最小距离」添加了 C++/Python/Go/Java/Rust 五种语言的解题代码及配套中文题解文档。同时将独立的 scale.vbs VBA 宏脚本整合到 Other-Accumulation-SomeTips.md 知识库文档中,新增 PPT 字体嵌入相关的 tips。另外删除了临时文件 toSay.md 和空的 .commitTitleExtra

代码正确性分析

文件 语言 正确性 说明
1848-...cpp C++ ✅ 正确 线性遍历取 abs(i - start) 最小值,逻辑无误
1848-...py Python ✅ 正确 一行版 generator + min(),简洁优雅
1848-...go Go ✅ 正确 自定义 abs1848 避免标准库缺失问题
1848-...java Java ✅ 正确 标准写法,使用 Math.min/Math.abs
1848-...rs Rust ✅ 正确 i32 类型转换处理得当
lib.rs Rust ✅ 正确 include! 路径已更新为 1848
README.md - ✅ 正确 新增条目位置按题号排序,链接格式与既有一致
Other-Accumulation-SomeTips.md - ⚠️ 有小问题 见下方 P2/P3
.commitmsg - ⚠️ 缺换行 文件末尾缺少换行符

潜在问题与建议

P2 - 中等问题

1. Other-Accumulation-SomeTips.md 中句子不完整

"选择完成后下次保存ppt时,就会将字体连同保存到" —— 此句缺少宾语,是未完成的半句话,应补全。

2. .commitmsg.cpp 文件末尾缺少换行符

POSIX 标准要求文本文件以换行符结尾。No newline at end of file 在 diff 中已标记,部分工具/编译器会产生警告。

P3 - 建议优化

3. VBA 代码块语言标记建议改为 vba

Other-Accumulation-SomeTips.md 中的 VBA 宏代码块标记为 ```vbscript,但该代码使用了 ActivePresentationShape 等 VBA 宿主对象,标记为 vba 更准确,也有助于语法高亮。

4. 操作步骤中英文混用

步骤 1-4 中 "Open the VBA editor"、"input a script name" 等为英文,而上下文及标题均为中文,建议统一为中文以保持一致性。

5. C++ ans 初始化存在隐式 signed/unsigned 转换

nums.size() 返回 size_t(无符号),赋值给 int ans 存在隐式窄化转换。虽然题目约束 nums.length <= 1000 不会溢出,属于 minor 问题。

总结

维度 评价
算法正确性 ✅ 五种语言实现均正确,时间 O(n) 空间 O(1)
代码风格 ✅ 与项目既有风格一致
文档质量 ⚠️ 题解部分完整清晰;Tips 部分有未完成句子和中英混用
文件组织 scale.vbs 整合到文档中、删除临时文件,合理

合并建议

建议修复 P2-1(不完整句子)后合并。其余为 minor 问题,不阻塞合并。

Review by AI Assistant

Comment thread Solutions/Other-Accumulation-SomeTips.md
Comment thread Solutions/Other-Accumulation-SomeTips.md
Comment thread Codes/1848-minimum-distance-to-the-target-element.cpp
Comment thread .commitmsg
Comment thread Solutions/Other-Accumulation-SomeTips.md
gh-pr-review Bot added a commit that referenced this pull request Apr 14, 2026
gh-pr-review Bot added a commit that referenced this pull request Apr 14, 2026
Add a section about Test-Driven Development (TDD) covering:
- Red → Green → Refactor cycle
- Python example with add() function
- One-line summary of TDD philosophy

Closes #1495
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

题解 Solution

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[newSolution]Who can add 1 more problem of LeetCode 1848

3 participants