Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Arrays;
- public class Main2 {
- char[] timeS = new char[6];
- char[] timeT = new char[6];
- public static void main(String[] args) {
- char[] S = new char[]{'2', '2', ':', '2', '2', ':', '2', '1',};
- char[] T = new char[]{'2', '2', ':', '2', '2', ':', '2', '3',};
- Main2 myApp = new Main2();
- System.out.println(myApp.solution(S, T));
- }
- int solution(char[] S, char[] T) {
- // Hours for S
- timeS[0] = S[0];
- timeS[1] = S[1];
- // Hours for S
- timeS[2] = S[3];
- timeS[3] = S[4];
- // Hours for S
- timeS[4] = S[6];
- timeS[5] = S[7];
- // Hours for T
- timeT[0] = T[0];
- timeT[1] = T[1];
- // Minutes for T
- timeT[2] = T[3];
- timeT[3] = T[4];
- // Seconds for T
- timeT[4] = T[6];
- timeT[5] = T[7];
- int interestingCount = 0;
- boolean exit = false;
- while (!Arrays.equals(timeS, timeT)) {
- increaseTime(timeS);
- interestingCount = interestingCount + checkInteresting(timeS);
- }
- return interestingCount;
- }
- private int checkInteresting(char[] arr) {
- ArrayList<Character> charArray = new ArrayList<>();
- for (int i = 0; i < arr.length; i++) {
- if (!charArray.contains(arr[i])) {
- charArray.add(arr[i]);
- }
- }
- if (charArray.size() > 2) {
- return 0;
- } else {
- return 1;
- }
- }
- private void increaseTime(char[] arr) {
- /*
- ASCII 48 is 0
- ASCII 49 is 1
- ASCII 50 is 2
- ASCII 51 is 3
- ASCII 52 is 4
- ASCII 53 is 5
- ASCII 54 is 6
- ASCII 55 is 7
- ASCII 56 is 8
- ASCII 57 is 9
- ASCII 58 is :
- */
- arr[5]++;
- if (arr[5] == 58) {
- arr[5] = 48;
- arr[4]++;
- if (arr[4] == 55) {
- arr[4] = 48;
- arr[3]++;
- if (arr[3] == 58) {
- arr[3] = 48;
- arr[2]++;
- if (arr[2] == 55) {
- arr[2] = 48;
- arr[1]++;
- if (arr[1] == 52 && arr[0] == 50) {
- arr[0] = 0; // overflow
- } else if (arr[1] == 58 && (arr[0] == 48 || arr[0] == 49)) {
- arr[0]++;
- }
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement