【发布时间】:2021-03-04 18:35:54
【问题描述】:
我认为我编写了正确的代码,但我无法输入任何内容。请帮帮我。
问题 - https://codeforces.com/problemset/problem/25/A
我的代码-
#include<iostream>
using namespace std;
int main(){
int n,count(0);
int arr[n];
for(int i=0;i<n;++i){
cin>>arr[i];
}
for(int i=2; i<n; ++i){
if(arr[i]-arr[i-1] != arr[i-1]-arr[i-2]){
++count;
}
}
cout<<count<<endl;
return 0;
}
【问题讨论】:
-
注意:
n此处未初始化,使用arr[n]很危险,会导致 UB。此外,可变长度数组 (VLA) 不是 C++ 标准的一部分。 -
你认为这段代码会输入多少个数字?
-
当您需要存储值但数量在编译时未知时使用
std::vector。在编译时知道容量时使用数组。