zoukankan      html  css  js  c++  java
  • 华为-on练习--身高找到最好的二人

    称号:

    离5个人选择2个人作为礼工具。中的每个个体的身高的范围160-190,要求2个人高差值至少(假设差异值一样,他们中最高的选择)。输出的两个人的身高升序。

    Smple input:161 189 167 172 188 Sample outPut: 188 189


    分析:我的理解就是先逆序排好数值, 然后逐对照较身高差值。 找出身高差值最小的然后输出


    代码例如以下:

    package com.wenj.test;
    /**
     * 要从5个人中选取2个人作为礼仪。当中每一个人的身高范围为160-190,要求2个人的身高差值最小(假设差值同样的话,选取当中最高的两人)。以升序输出两个人的身高。
     *      Smple input:161 189 167 172 188 Sample outPut: 188 189
     * @author wenj91-PC
     *
     */

    public class TestBestGround {

        public static void main(String args[]){
            String strIn = "161 189 167 172 188";
            TestBestGround tb = new TestBestGround();
            tb.printTheBestGround(strIn);
        }
        
        public void printTheBestGround(String strIn){
            String strTemp = strIn;
            String[] strArr = strTemp.split(" ");
            
            int[] numArr = new int[strArr.length];
            for(int i=0; i<strArr.length; i++){
                numArr[i] = Integer.parseInt(strArr[i]);
            }
            
            for(int i=0; i<numArr.length; i++){
                for(int j=i+1; j<numArr.length; j++){
                    if(numArr[i]<numArr[j]){
                        int temp = numArr[i];
                        numArr[i] = numArr[j];
                        numArr[j] = temp;
                    }
                }
            }
            
            int aver = numArr[0]-numArr[1];
            int pos = 0;
            
            for(int i=1; i<numArr.length-1; i++){
                int temp = numArr[i]-numArr[i+1];
                if( temp < aver){
                    aver = temp;
                    pos = i;
                }
            }
            
            System.out.println(numArr[pos+1] + " " + numArr[pos]);
            
        }
    }


    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    POJ 2584 T-Shirt Gumbo (二分图多重最大匹配)
    POJ 2584 T-Shirt Gumbo (二分图多重最大匹配)
    POJ 1904 King's Quest ★(强连通分量:可行完美匹配边)
    POJ 1904 King's Quest ★(强连通分量:可行完美匹配边)
    HDU 4638 Group ★(树状数组)
    HDU 4638 Group ★(树状数组)
    HDU 4632 Palindrome subsequence (区间DP)
    HDU 4632 Palindrome subsequence (区间DP)
    hdu2604 Queuing
    poj3757 Training little cats
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4852095.html
Copyright © 2011-2022 走看看