首页 > 试题广场 >

非递减序列

[编程题]非递减序列
  • 热度指数:6773 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
对于一个长度为 n 的整数序列,你需要检查这个序列最多改变一个数后是否可以是非递减序列。
非递减序列的定义是:array[i]<=array[i+1] , for 1<=i<n;

数据范围: , 数组中的值满足



输入描述:
输入是一个长度为n的整数序列。


输出描述:
输出为; 是为1; 否为0
示例1

输入

3 4 6 5 5 7 8

输出

1

说明

将6变成4, 序列变成 [3 4 4 5 5 7 8],符合非递减序列,因此输出1 
示例2

输入

3 4 6 5 4 7 8

输出

0

备注:
n的取值范围为: [2, 1000]
头像 诗云panther
发表于 2021-08-29 08:36:52
include<stdio.h> int main(){ int a[1000],c; int i=0,n=0,t=0; while(scanf("%d",&c)!=EOF) { a[n]=c; n++; 展开全文
头像 von1223
发表于 2020-11-19 01:36:20
这道题就是判断有多少个不符合非递减序列的值 inList=input().split() m=0 for i in range(len(inList)-1): if inList[i]>inList[i+1]: m=m+1 if m<=1: print( 展开全文
头像 赫he
发表于 2024-04-15 15:31:44
#include <iostream> #include <vector> using namespace std; vector<int> a; bool isT(){ for(int i = 0; i < a.size()-1; i++){ 展开全文
头像 想玩飞盘的斑马在理财
发表于 2024-04-12 23:28:06
// 遍历整数序列,看当前数字是否小于等于它后面的那个数 #include <stdio.h> int main() { int arr[10000] = { 0 }; int count = 0; while (scanf("%d", &a 展开全文
头像 代不出来
发表于 2021-12-09 19:33:09
def func(s):     arr = [int(x) for x in s.split()]     c = 0     for i in range(len(arr)-1):         展开全文
头像 清溪行
发表于 2022-01-14 16:42:51
#include <bits/stdc++.h> using namespace std; int main(){ int m; stack<int> v; int c=0; while(cin>>m){ if(v 展开全文