ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4월 12일 수요일 TIL 회고록
    카테고리 없음 2023. 4. 12. 21:58

    코딩테스트


    콜라츠 추측


    문제 설명, 제한 사항, 입출력 예

     

    풀이

    class Solution {
        public int solution(long num) {
          int answer = 0;
          // while문을 사용해서 반복문 실행
          // num이 1이면 반복문 종료
          while (num != 1) {
          // n을 2로 나눈 수의 나머지 0이면 = 짝수이면 
            if (num % 2 == 0) {
            // num을 2로 나눈 값을 num에 저장 후 answer 카운트
              num = num / 2;
              answer++;
              // n을 2로 나눈 수의 나머지가 1이면 = 홀수이면
            } else if (num % 2 == 1) {
            // num에 3을 곱한 후 1을 더하고 answer 카운트
              num = (num * 3) + 1;
              answer++;
            } 
            // answer가 500이 넘으면 answer에 -1을 선언하고 break로 while문 종료
              if(answer > 500) {
                  answer = -1;
                  break;
              }
          }
    
          return answer;
        }
      }

    실행 결과


    음양 더하기


    문제 설명, 제한 사항, 입출력 예

    풀이

    class Solution {
        public int solution(int[] absolutes, boolean[] signs) {
          int answer = 0;
          // for문을 사용해서 absolutes의 길이만큼 반복문 실행
          for (int i =0 ; i < absolutes.length; i++) {
          // signs의 [i]번째가 true이면 answer에 absolutes의 i번쨰를 더한다.
            if (signs[i] == true) {
              answer += absolutes[i];
              // sign의 [i]번째가 false이면 answer에 absolutes의 i번째를 뺀다.
            } else if (signs[i] == false) {
              answer -= absolutes[i];
            }
          }
          return answer;
        }
      }

    실행 결과

Designed by Tistory.