二進位制手錶頂部有 4 個 led 代表小時(0-11),底部的 6 個 led 代表分鐘(0-59)。
每個 led 代表乙個 0 或 1,最低位在右側。
例如,上面的二進位制手錶讀取 「3:25」。
給定乙個非負整數 n 代表當前 led 亮著的數量,返回所有可能的時間。
案例:
輸入: n = 1注意事項:返回: ["1:00", "2:00", "4:00", "8:00", "0:01", "0:02", "0:04", "0:08", "0:16", "0:32"]
一開始提交的這個,太慢了:
class solution
};public listhour1 = new arraylist<>();
public listhour2 = new arraylist<>();
public listhour3 = new arraylist<>();
//min0~5 代表1個數0~5的時候的分針點數
public listmin0 = new arraylist(1)
};public listmin1 = new arraylist<>();
public listmin2 = new arraylist<>();
public listmin3 = new arraylist<>();
public listmin4 = new arraylist<>();
public listmin5 = new arraylist<>();
/** 選擇器 */
public listgethourlist(int type)
}/** 選擇器 */
public listgetminlist(int type)
}public listreadbinarywatch(int num)
}return result;
}/** 初始化list */
public solution()
//格式化分針顯示
getminlist(temp).add(string.format("%02d", i));}}
/** 獲取1的數量 */
public int countone(int n)
return count;
}/** 組合時、分進result */
public void dealresult(listresult, listhours, listminutes) }}
}
後來參照別人提交的作修改:
class solution else }}
}return times;
}//或者這樣
// public listreadbinarywatch(int num) else
// }
// }
// return times;
// }
}
401 二進位制手錶
二進位制手錶頂部有 4 個 led 代表小時 0 11 底部的 6 個 led 代表分鐘 0 59 每個 led 代表乙個 0 或 1,最低位在右側。例如,上面的二進位制手錶讀取 3 25 給定乙個非負整數 n 代表當前 led 亮著的數量,返回所有可能的時間。案例 輸入 n 1 返回 1 00 2...
401 二進位制手錶
二進位制手錶頂部有 4 個 led 代表小時 0 11 底部的 6 個 led 代表分鐘 0 59 每個 led 代表乙個 0 或 1,最低位在右側。例如,上面的二進位制手錶讀取 3 25 給定乙個非負整數 n 代表當前 led 亮著的數量,返回所有可能的時間。案例 輸入 n 1 返回 1 00 2...
LeetCode 二進位制手錶
二進位制手錶頂部有 4 個 led 代表小時 0 11 底部的 6 個 led 代表分鐘 0 59 每個 led 代表乙個 0 或 1,最低位在右側。例如,上面的二進位制手錶讀取 3 25 給定乙個非負整數 n 代表當前 led 亮著的數量,返回所有可能的時間。案例 輸入 n 1 返回 1 00 2...