Skip to content

Commit 1eccefb

Browse files
committed
feat: sucess log with green and fail log with red
1 parent 3f56193 commit 1eccefb

File tree

3 files changed

+123
-6
lines changed

3 files changed

+123
-6
lines changed

common/utils/question-handler/showLogs.js

+6-6
Original file line numberDiff line numberDiff line change
@@ -63,15 +63,15 @@ export function showLogs(fnName, paramMap, compareMap) {
6363

6464
const logTable = new Table({
6565
columns: [
66-
{ name: '测试结果', title: '测试结果', alignment: 'left', color: "blue" },
67-
{ name: '预期结果', title: '预期结果', alignment: 'left', maxLen: 10 },
68-
{ name: '执行结果', title: '执行结果', alignment: 'left', maxLen: 10 },
69-
{ name: '执行用时', title: '执行用时', alignment: 'left', color: "red" },
70-
{ name: '内存占用', title: '内存占用', alignment: 'left', color: "green" },
66+
{ name: '测试结果', title: '测试结果', alignment: 'center', maxLen: 10 },
67+
{ name: '预期结果', title: '预期结果', alignment: 'center', maxLen: 40 },
68+
{ name: '执行结果', title: '执行结果', alignment: 'center', maxLen: 40 },
69+
{ name: '执行用时', title: '执行用时', alignment: 'center', maxLen: 10 },
70+
{ name: '内存占用', title: '内存占用', alignment: 'center', maxLen: 10 },
7171
]
7272
})
7373
logsItems.forEach((item) => {
74-
logTable.addRow(item)
74+
logTable.addRow(item, { color: item.测试结果 === '通过' ? 'green' : 'red', })
7575
})
7676
logTable.printTable();
7777
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<p>给你两个正整数:<code>n</code> 和 <code>target</code> 。</p>
2+
3+
<p>如果数组 <code>nums</code> 满足下述条件,则称其为 <strong>美丽数组</strong> 。</p>
4+
5+
<ul>
6+
<li><code>nums.length == n</code>.</li>
7+
<li><code>nums</code> 由两两互不相同的正整数组成。</li>
8+
<li>在范围 <code>[0, n-1]</code> 内,<strong>不存在 </strong>两个 <strong>不同</strong> 下标 <code>i</code> 和 <code>j</code> ,使得 <code>nums[i] + nums[j] == target</code> 。</li>
9+
</ul>
10+
11+
<p>返回符合条件的美丽数组所可能具备的 <strong>最小</strong> 和,并对结果进行取模 <code>10<sup>9</sup>&nbsp;+ 7</code>。</p>
12+
13+
<p>&nbsp;</p>
14+
15+
<p><strong>示例 1:</strong></p>
16+
17+
<pre>
18+
<strong>输入:</strong>n = 2, target = 3
19+
<strong>输出:</strong>4
20+
<strong>解释:</strong>nums = [1,3] 是美丽数组。
21+
- nums 的长度为 n = 2 。
22+
- nums 由两两互不相同的正整数组成。
23+
- 不存在两个不同下标 i 和 j ,使得 nums[i] + nums[j] == 3 。
24+
可以证明 4 是符合条件的美丽数组所可能具备的最小和。</pre>
25+
26+
<p><strong>示例 2:</strong></p>
27+
28+
<pre>
29+
<strong>输入:</strong>n = 3, target = 3
30+
<strong>输出:</strong>8
31+
<strong>解释:</strong>
32+
nums = [1,3,4] 是美丽数组。
33+
- nums 的长度为 n = 3 。
34+
- nums 由两两互不相同的正整数组成。
35+
- 不存在两个不同下标 i 和 j ,使得 nums[i] + nums[j] == 3 。
36+
可以证明 8 是符合条件的美丽数组所可能具备的最小和。</pre>
37+
38+
<p><strong>示例 3:</strong></p>
39+
40+
<pre>
41+
<strong>输入:</strong>n = 1, target = 1
42+
<strong>输出:</strong>1
43+
<strong>解释:</strong>nums = [1] 是美丽数组。
44+
</pre>
45+
46+
<p>&nbsp;</p>
47+
48+
<p><strong>提示:</strong></p>
49+
50+
<ul>
51+
<li><code>1 &lt;= n &lt;= 10<sup>9</sup></code></li>
52+
<li><code>1 &lt;= target &lt;= 10<sup>9</sup></code></li>
53+
</ul>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
2+
/**
3+
* 3026.找出美丽数组的最小和 [2024-03-08]
4+
* 给你两个正整数:n 和 target 。
5+
* 如果数组 nums 满足下述条件,则称其为 美丽数组 。
6+
* nums.length == n.
7+
* nums 由两两互不相同的正整数组成。
8+
* 在范围 [0, n-1] 内,不存在 两个 不同 下标 i 和 j ,使得 nums[i] + nums[j] == target 。
9+
* 返回符合条件的美丽数组所可能具备的 最小 和,并对结果进行取模 109 + 7。
10+
*
11+
* 示例 1:
12+
* 输入:n = 2, target = 3
13+
* 输出:4
14+
* 解释:nums = [1,3] 是美丽数组。
15+
* - nums 的长度为 n = 2 。
16+
* - nums 由两两互不相同的正整数组成。
17+
* - 不存在两个不同下标 i 和 j ,使得 nums[i] + nums[j] == 3 。
18+
* 可以证明 4 是符合条件的美丽数组所可能具备的最小和。
19+
* 示例 2:
20+
* 输入:n = 3, target = 3
21+
* 输出:8
22+
* 解释:
23+
* nums = [1,3,4] 是美丽数组。
24+
* - nums 的长度为 n = 3 。
25+
* - nums 由两两互不相同的正整数组成。
26+
* - 不存在两个不同下标 i 和 j ,使得 nums[i] + nums[j] == 3 。
27+
* 可以证明 8 是符合条件的美丽数组所可能具备的最小和。
28+
* 示例 3:
29+
* 输入:n = 1, target = 1
30+
* 输出:1
31+
* 解释:nums = [1] 是美丽数组。
32+
*
33+
* 提示:
34+
* 1 <= n <= 109
35+
* 1 <= target <= 109
36+
*
37+
*/
38+
/**
39+
* @param {number} n
40+
* @param {number} target
41+
* @return {number}
42+
*/
43+
var minimumPossibleSum = function(n, target) {
44+
const mod = 1000000007;
45+
const m = Math.floor(target / 2);
46+
if (n <= m) return ((1 + n) * n / 2) % mod;
47+
return (((1 + m) * m / 2) + (((target + target + (n - m) - 1) * (n - m) / 2))) % mod;
48+
};
49+
50+
/**
51+
* Test case
52+
*/
53+
showLogs(
54+
minimumPossibleSum,
55+
{
56+
data: [[ 2, 3],[ 3, 3],[ 1, 1]],
57+
structure: ["number","number"],
58+
},
59+
{
60+
data: [4,8,1],
61+
structure: ["number"]
62+
}
63+
)
64+
console.log('点击跳转到题目提交:https://leetcode.cn/problems/find-the-minimum-possible-sum-of-a-beautiful-array/');

0 commit comments

Comments
 (0)