• 949. Largest Time for Given Digits


    Given an array of 4 digits, return the largest 24 hour time that can be made.

    The smallest 24 hour time is 00:00, and the largest is 23:59.  Starting from 00:00, a time is larger if more time has elapsed since midnight.

    Return the answer as a string of length 5.  If no valid time can be made, return an empty string.

    Example 1:

    Input: [1,2,3,4]
    Output: "23:41"
    

    Example 2:

    Input: [5,5,5,5]
    Output: ""
    

    Note:

    1. A.length == 4
    2. 0 <= A[i] <= 9
    class Solution {
         public String largestTimeFromDigits(int[] A) {
                String ans = "";
                for (int i = 0; i < 4; ++i) {
                    for (int j = 0; j < 4; ++j) {
                        for (int k = 0; k < 4; ++k) {
                            for(int l = 0; l < 4; l++) {
                                if (i == j || i == k || i == l || j == k || j == l || k == l) continue; // avoid duplicate among i, j & k.
                            String h = "" + A[i] + A[j], m = "" + A[k] + A[l], t = h + ":" + m; // hour, minutes, & time.
                            if (h.compareTo("24") < 0 && m.compareTo("60") < 0 && ans.compareTo(t) < 0) ans = t; // hour < 24; minute < 60; update result.
                            }
                            
                        }
                    }
                }
                return ans;
            }
    }

    垃圾题。。permutation数组里的四位,符合条件且更大就update

  • 相关阅读:
    Ruby 操作 Mysql (2)
    有关SQL模糊查询【转载】
    vim命令行大全【转载】
    Ruby连接MySQL
    c# 操作mysql
    sublime 3 快捷键大全
    VS2010快捷键大全
    [使用Xpath对XML进行模糊查询]
    vim永久显示行号
    Ubuntu16.04LTS安装flash player
  • 原文地址:https://www.cnblogs.com/wentiliangkaihua/p/13599316.html
Copyright © 2020-2023  润新知