zoukankan      html  css  js  c++  java
  • 杭电oj2037——今年暑假不AC(java实现)

    思路:标准贪心

    先把所有思路列出来:

    1.优先选择开始时间最早的,经分析,不可行

    2.优先选择持续时间最短的,经分析,不可行

    3.优先选择结束时间最早的,经分析,可行

    然后根据第三种思路实现代码就好

    实现思路:先将数据存在二维数组里,然后用冒泡排序结束时间升序排序,然后遍历一遍,选择时间能衔接得上的

    source code:

    package hduoj;
    
    import java.util.Scanner;
    
    public class hdoj_2037 {
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            while(true){
                int count = sc.nextInt();
                if(count == 0) break;
                int[][] data = new int[count][2];
                for(int i = 0;i<count;++i){
                    data[i][0] = sc.nextInt();
                    data[i][1] = sc.nextInt();
                }//initialize
                bubble_2D_arr(data);
                int res = 0;
                int index = -1;
                for(int i = 0;i < data.length;++i){
                    if(data[i][0]>=index){
                        ++res;
                        index = data[i][1];
                    }
                }
                System.out.println(res);
            }
        }
    
        private static void bubble_2D_arr(int[][] arr){
            boolean flag = false;
            int len = arr.length;//get the line number
            for(int i = 0;i < len;++i){
                for(int j = 1;j < len - i;++j){
                    if(arr[j-1][1] > arr[j][1]){
                        int temp1 = arr[j-1][0];
                        int temp2 = arr[j-1][1];
                        arr[j-1][0] = arr[j][0];
                        arr[j-1][1] = arr[j][1];
                        arr[j][0] = temp1;
                        arr[j][1] = temp2;
                        flag = true;
                    }
                }
                if(!flag) break;//indicates the seq isn't change ever before
            }
        }
    }

    代码已经ac

    希望对大家有所帮助

    以上

  • 相关阅读:
    sparql学习sparql示例、dbpedia在线验证
    中国绿卡
    逾期率的水有多深,你知道吗?
    ICO和区块链区别
    What are the benefits to using anonymous functions instead of named functions for callbacks and parameters in JavaScript event code?
    Link static data in sql source control
    sql data compare
    viewbag
    多态的实际使用
    win10 sedlauncher.exe占用cpu处理
  • 原文地址:https://www.cnblogs.com/lavender-pansy/p/12253038.html
Copyright © 2011-2022 走看看