1144 The Missing Number

寻找缺失的最小正整数

1144 The Missing Number
Given N integers, you are supposed to find the smallest positive integer that is NOT in the given list.

Input Specification:
Each input file contains one test case. For each case, the first line gives a positive integer N (≤10
​5
​​ ). Then N integers are given in the next line, separated by spaces. All the numbers are in the range of int.

Output Specification:
Print in a line the smallest positive integer that is missing from the input list.

Sample Input:
10
5 -25 9 6 1 3 4 2 5 17
Sample Output:
7
题目大意:寻找一段序列中,没出现的最小正整数。
分析:将大于0的数放在v中,进行排序。如果序列中不存在负数,最小的起始数为1,相反则为v[0],
参考代码:

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main() {
	vector<int>v;
	int n, temp, minn, flag = 0;
	scanf_s("%d", &n);
	for (int i = 0; i < n; i++) {
		scanf_s("%d", &temp);
		if (temp > 0) v.push_back(temp);
		else flag = 1;
	}
	sort(v.begin(), v.end());
	if (flag)minn = 1;
	else minn = v[0];
	for (int i = 0; i < v.size(); i++) {
		int j = i + 1, cnt = 1;
		while (j < v.size() && v[j] == v[i]) {
			cnt++; j++;
		}
		i += (cnt - 1);
		if (v[i] == minn) { minn++; }
		else { cout << minn; return 0; }
	}
	cout << minn;
	return 0;
}
在 LaTeX 中遇到 `Missing number, treated as zero.` 错误通常表明编译器期望找到一个数字或长度值,但在相应位置上却发现了其他内容。此类错误在使用浮动体(如 `table` 或 `figure`)时较为常见,特别是在对表格、图形进行排版调整时。 ### 常见原因及解决方法 1. **在方括号中使用了非数字参数** - 在某些宏包或命令中,LaTeX 会将方括号中的内容解析为可选参数,例如 `[h]`、`[t]` 等用于指定浮动体位置的选项。如果在这些方括号中错误地使用了非数字或不被支持的内容,就会触发该错误。 - **解决方案**:确保所有可选参数均符合语法规范,必要时用大括号 `{}` 将特殊字符包裹起来以避免误解[^5]。 2. **在 `\begin{tabular}` 或 `\begin{array}` 中误用了方括号** - 如果在表格定义中直接使用了类似 `[x]` 的表达式而没有正确转义,LaTeX 可能会将其误认为是需要数值参数的命令。 - **解决方案**:在可能引起歧义的地方添加额外的大括号,例如将 `[x]` 改写为 `{[x]}`。 3. **与某些宏包冲突** - 某些情况下,使用了多个图形或表格相关的宏包(如 `subfigure`、`float`、`caption` 等),可能会导致命名冲突或参数处理异常。 - **解决方案**:检查并更新宏包版本,尝试简化文档导言区引入的宏包数量,排查是否存在重复定义的问题[^4]。 4. **非法单位或缺少单位** - 当设置列宽、间距等参数时,如果没有正确指定单位(如 `pt`、`cm`),也可能引发此错误。 - **解决方案**:确保所有涉及尺寸设定的地方都带有合适的单位,例如 `\tabcolsep=0.4cm` 应保持格式一致[^2]。 5. **在浮动体外部使用浮动体命令** - 浮动体环境(如 `table`、`figure`)不能嵌套在某些不允许浮动的环境中(如 `framed`、`minipage` 等),否则会出现“Not in outer par mode”等错误,并伴随 `Missing number` 提示。 - **解决方案**:移除浮动体标签 `[h]` 或改用非浮动表格/图形环境,或者使用 `H` 选项强制定位(需加载 `float` 宏包)[^1]。 6. **未正确结束数学模式** - 在数学环境中使用了不完整的命令结构,例如 `\begin{tabular}` 内部混用了数学符号但未正确闭合 `$...$`。 - **解决方案**:仔细检查所有数学公式是否完整闭合,避免跨行或跨列断开。 --- ### 示例修正代码 以下是一个修复后的 `table*` 环境示例: ```latex \usepackage{float} % 引入 float 宏包以使用 H 选项 \begin{table*}[H] \centering \caption{Quantitative results on NYUv2 dataset, the best performance is marked in bold} \label{tab6} \tabcolsep=0.4cm \begin{tabular}{cc} A & B \\ 1 & 2 \\ {[x]}^2 & 4 \end{tabular} \end{table*} ``` --- ### 总结 `Missing number, treated as zero.` 是一种典型的 LaTeX 编译错误,其根源往往在于参数格式不正确、宏包冲突或语法结构不完整。通过逐一排查上述几种常见情况,可以有效定位并解决问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值