#include <iostream> using namespace std; int main() { int n, pre, maxx = 0, mark = 0; cin >> n; cin >> pre; for(int i = 1; i <= n; i++){ int temp; cin >> temp; if(abs(temp - pre) > 1 || i == n){ maxx = max(maxx, i - mark); mark = i; } pre = temp; } cout << maxx << endl; } // 64 位输出请用 printf("%lld")
非常基础的模拟题, 注意可以直接在读入的时候进行操作.
(思路类似于滑动窗口)