CSP 201903-1小中大(Java)

       目前是大二的学生,虽然也参加过蓝桥杯什么的比赛,但是对自己的编程能力还是不自信,我感觉和高手相比我还是差太远了,所以打算今年九月份考第一次CSP认证对自己的编程能力做一个评估,心中有点忐忑,计划是这个暑假用大概一个月的时间来准备,希望通过这段时间努力提高自己。(我打算考Java语言的认证,虽然从我目前了解到的信息来看好像还是用C++的居多,欢迎有相同打算考Java语言CSP认证的同伴或者C++的同伴评论,一起交流)


        刚开始分析这个题的时候被晃了一下,题目中说数据可能为升序也可能为降序,并且可能有重复数据,于是我在想是不是要去重,但题目中只是说有重复数据并没有说要去重,最终通过提交的结果证实的确不需要去重,这道题就是一道非常基础的题,用到了一个ArrayList,其他的也没用到什么算法什么的,毕竟是五道题中的第一个题。

       完整代码如下:

import java.util.*;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		ArrayList<Integer> num = new ArrayList<Integer>();
		for(int i=0;i<n;i++) {
				num.add(sc.nextInt());
			}
		int zhong = (num.get((num.size()-1)/2)+num.get((num.size())/2))*10/2;
		String Z;
		if(zhong%10==5)
			Z = zhong/10.0+"";
		else
			Z = zhong/10+"";
		if(num.get(0)>=num.get(num.size()-1))
			System.out.println(num.get(0)+" "+Z+" "+num.get(num.size()-1));
		else
			System.out.println(num.get(num.size()-1)+" "+Z+" "+num.get(0));
	}
}

        提交结果得了满分,应该没什么太大的问题,有不同思路或者对我写的代码有不同看法的欢迎提出,共同进步。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值