C++ 在本地ide中运行时,所有输出都是正确的,但在codeforces中提交时,会抛出错误
下面是在本地ide中按预期运行的代码,但当我在codeforces中提交代码时,它显示输出是错误的C++ 在本地ide中运行时,所有输出都是正确的,但在codeforces中提交时,会抛出错误,c++,C++,下面是在本地ide中按预期运行的代码,但当我在codeforces中提交代码时,它显示输出是错误的 #包括 使用名称空间std; int main() {int t; cin>>t; 而(t--) { std::向量my; int x,i,a,j,bno,sno; cin>>x;//输入元素数 对于(i=0;i>a;//输入元素 我的。推回(a); } 对于(i=1;i,您的问题如下: #include<bits/stdc++.h> #包括 这是由Bjarne Stroustru
#包括
使用名称空间std;
int main()
{int t;
cin>>t;
而(t--)
{
std::向量my;
int x,i,a,j,bno,sno;
cin>>x;//输入元素数
对于(i=0;i>a;//输入元素
我的。推回(a);
}
对于(i=1;i,您的问题如下:
#include<bits/stdc++.h>
#包括
这是由Bjarne Stroustrup(C++的创建者)创建的头文件,仅供初学者使用(这样他们就不必选择需要包含的头文件)。
只需将其替换为:
#include <iostream>
#include <vector>
#包括
#包括
另一个相关的注意事项是:您似乎是c++的初学者(例如,您正在使用名称空间std;
,这是一种不好的做法;谷歌it)。你真的不应该做竞争性编程。最好从基础开始。我不同意你的观点,但这并不能回答问题。如果你能给我推荐一些书或课程,那将对我有很大帮助。你把bits/stdc++.h和std_lib_设施搞混了。h.bits/stdc++.h是一个图书馆C++中的PultMead头用于帮助预编译头。您应该正确使用它,但是在BITS文件夹中的每个头都是这样。“MayayYayFHIT”在堆栈溢出上保持C++社区。这里有一个链接,解释了使用名称空间STD如何有毒>代码>;/Cux>可以得到:这将访问向量超出范围。:bno=(my[j]>my[j+1])?my[j]:my[j+1];
在循环的最后一次迭代中。代码中还有一些其他地方也会发生这种情况。如果使用at()
函数而不是[]
您会发现问题,因为将引发异常。这是一个蛮力解决方案。它可能很有效,我没有仔细研究过,但在竞争网站上传递时间限制可能太慢了。@user4581301是的,您是对的,我的循环只会产生问题,现在它比u
#include <iostream>
#include <vector>