ABOUT ME

-

Today
Yesterday
Total
  • 9/21 TIL [프로그래머스 코딩테스트] 4문제
    프로그래밍/코딩테스트연습 2023. 9. 21. 16:25

    가위 바위 보

    • 반복문과 SWITCH문을 사용
    class Solution {
        public String solution(String rsp) {
            String answer = "";
            String b=rsp;
            int a=rsp.length();
            for(int i=0; i<a; i++){
                char q = b.charAt(i);
                switch(q){
                    case '2' : 
                        answer +="0";
                        break;
                    case '5' : 
                        answer +="2";
                        break;
                    case '0' :
                        answer +="5";
                        break;    
                }
            }
            return answer;
        }
    }

    해시 완전탐색 조건문   세개가 태그로 걸려있는데 정작 해시는 써보지도 못함

    Collections Framework    TIL쓰면서 복습해야지 말만했던 나를 반성한다.

    오늘은 진짜 볼 예정

     

     

    다른 사람의 풀이

    import java.util.Arrays;
    import java.util.stream.Collectors;
    
    class Solution {
        public String solution(String rsp) {
            return Arrays.stream(rsp.split("")).map(s -> s.equals("2") ? "0" : s.equals("0") ? "5" : "2").collect(Collectors.joining());
        }
    }

    진짜로 스트림 못쓰게 해야함ㅋㅋㅋㅋ

     

     

     

    문자열 뒤집기

    • for문과 charAt을 사용해서 하나씩 뽑아서 answer에 넣으면 되겠다고 생각
    class Solution {
        public String solution(String my_string) {
            String answer = "";
            int a=my_string.length();
            String c= my_string;
    
            for(int i=0; i<a; i++){
                answer += c.charAt(a-1-i);
            }
    
            return answer;
        }
    }

     

    다른 사람의 풀이

    import java.util.*;
    
    class Solution {
        public String solution(String my_string) {
            StringBuilder sb = new StringBuilder();
            sb.append(my_string);
            sb.reverse();
    
            return sb.toString();
        }
    }

    StringBuilder 에서 reverse 활용시 한번에 가능

    class Solution {
        public String solution(String myString) {
            return new StringBuilder(myString).reverse().toString();
        }
    }

    위 코드 한줄 요약

     

    이분들 덕분에 코딩세포 하나씩 살아나는중

     

     

     

     

    편지

    class Solution {
        public int solution(String message) {
            int answer = message.length()*2;
            return answer;
        }
    }

     

     

    점의 위치 구하기

    • 삼항 연산자 쓰기 싫었지만, 반복문으로는 너무 쉽기도 하고  코드 한줄로 써보고 싶었음
    class Solution {
        public int solution(int[] dot) {
            int answer = 
            dot[0]>0 ? (dot[1]>0 ? 1 : 4) : (dot[1]<0 ? 3 : 2);
            return answer;
        }
    }
Designed by Tistory.