CCF--折点计数--用java语言实现

本文介绍了一种使用Java实现的折点计数算法。该算法通过遍历数组来识别和计算数组中出现的小大小或者大小大的折点数量。文章提供了完整的代码示例,并详细解释了如何处理边界元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目要求:


思路:
1.老规矩,将输入的数存进数组中去
2.两个判断都能形成折点
2.1判断一:前<中,中>后,也就是小大小的关系。
2.2判断二:前>中,中<后,也就是大小大的关系。
3.接着就是遍历整个数组,找出这两种关系出来。唯一要注意的是,判断时数组的第一个元素因为前面没有元素。所以应该从数组第二个元素开始判断。同理数组最后一个数也不用判断。因此循环中判断次数是数组长度-2

代码:
import java.util.Scanner;
public class Main {
/*
 * 折点计数
 */
	public static void main(String[] args) {
		int temp=0;
		
		Scanner sc = new Scanner(System.in);
		int n =sc.nextInt();
		
		int arr[] = new int [n];
		for(int i=0;i<arr.length;i++){
			arr[i] = sc.nextInt();
		}
		
		for(int i=0;i<arr.length-2;i++){
			if(arr[i+1]>arr[i]&&arr[i+1]>arr[i+2]){
				temp++;
			}
			if(arr[i+1]<arr[i]&&arr[i+1]<arr[i+2]){
				temp++;
			}
		}
		
		System.out.println(temp);
	}

}


如有不对,请指出批评。。。转载需声明。。。后续继续更新用java语言实现ccf例题




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值