美文网首页
蓝桥杯算法训练-数组查找及替换问题(Java语言)

蓝桥杯算法训练-数组查找及替换问题(Java语言)

作者: XHHP | 来源:发表于2019-08-07 21:14 被阅读0次

    <font size="5px" color="#87CEFA" >描述</font>

    给定某整数数组和某一整数b。要求删除数组中可以被b整除的所有元素,同时将该数组各元素按从小到大排序。如果数组元素数值在A到Z的ASCII之间,替换为对应字母。元素个数不超过100,b在1至100之间。

    ****<font size="5px" color="#87CEFA" >输入</font>****
    输入描述:

    第一行为数组元素个数和整数b

    第二行为数组各个元素

    输入样例:

    ****<font size="5px" color="#87CEFA" >输出</font>****
    输出描述:

    按照要求输出

    输出样例:
    ****<font size="5px" color="#87CEFA" >思路分析</font>****
           这道题首先按照题目要求进行输入,并初始化数组。之后调用函数,进行循环遍历是否能被n整除,如果不能整除,则将其剔除,将其置为-1。用变量c记录数组中元素值不为-1的数目。然后调用排序算法对数组进行排序。最后循环遍历是否位于A~Z区间内,并输出结果。

    import java.util.Arrays;
    import java.util.Scanner;
    
    public class lanqiao1110 {
        public static void main(String[] args) {
            Scanner reader = new Scanner(System.in);
    
            int num = reader.nextInt();                         // 按题目要求创建输入
            int n = reader.nextInt();
    
            if (num > 0) {
                int[] arr = new int[num];                       // 建立对应的数组
                for (int i = 0; i < num; i++) {
                    arr[i] = reader.nextInt();
                }
    
                lanqiao_1110(arr, n);                           //调用函数
            }
    
        }
    
        public static void lanqiao_1110(int[] arr, int k) {
            int c = arr.length;                                 //获取数组的长度
            
            for (int i = 0; i < arr.length; i++) {              //循环遍历查看是否能被k整除,并剔除
                if (arr[i] % k == 0) {
                    arr[i] = -1;
                    c--;
                }
            }
            
            Arrays.sort(arr);                                   //进行从小到大排序
            
            for (int i = arr.length - c; i < arr.length; i++) {     //循环遍历输出结果
                if (arr[i] >= 'A' && arr[i] <= 'Z') {
                    System.out.print((char) arr[i] + " ");
                } else {
                    System.out.print(arr[i] + " ");
                }
            }
        }
    }
    
    

    相关文章

      网友评论

          本文标题:蓝桥杯算法训练-数组查找及替换问题(Java语言)

          本文链接:https://www.haomeiwen.com/subject/lzlbdctx.html