CCF 第一题 2019年3月小中大问题(JAVA)

报名了今年9月15号的考试,在涮真题的时候发现大多都是C来解决的。而我更擅长于JAVA,就报名了java.结果在刷真题的过程中都没找到博主有很全的用java解决CCF。唉、、只能看Cl理解后又用JAVA实现,所以为了方便我就在刷题的过程中尽量在我博客上更新出来。我有时候想法圈圈绕绕的可能实现的不是最简单的方式,但尽量解决冲100分。。。所以如果有大神偶然路过或各位大侠代码方面有什么好改正的,尽管留言哟!!我会在考研过程中登上进行调整哒。

我是反着做的,就从2019年开始更起哈,先更完历年的第一题哈

一,我的目录

 

我的eclipse目录

package question20193;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

//小中大问题:统计出n个数据中的最大值、中间数和最小值,并按照从大到小的顺序输出
//得分:100

public class Main {
   public static void main(String[] args) {
       int length;
       //输入
       Scanner s=new Scanner(System.in);
       length=s.nextInt();
       //创建一个长度不定的整形数组
       ArrayList n=new ArrayList();
       for(int i=0;i<length;i++) {
           n.add(s.nextInt());
       }
       //升序排列
       Collections.sort(n);
       //计算中位数
       double mod;
       
       if(length%2==1) {
           mod= (int) n.get((length-1)/2);
           System.out.println(n.get(length-1)+" "+(int)mod+" "+n.get(0));
       }else {
           int mod1=(int) n.get(length/2);
           int mod2=(int) n.get(length/2-1);
           if((mod1+mod2)%2==1) {
               mod=(mod1+mod2)/2.0;
               System.out.println(n.get(length-1)+" "+mod+" "+n.get(0));
           }else if((mod1+mod2)%2==0){
               mod=(mod1+mod2)/2;
               System.out.println(n.get(length-1)+" "+(int)mod+" "+n.get(0));
           }
           
           
       }
      
       
   }
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值