본문 바로가기
알고리즘

[Algorithm] 5월 20일 알고리즘 연습

by eigen96 2022. 5. 20.
728x90

https://highcode.tistory.com/6

 

[TIP] 정규표현식(Pattern Matching) 완전 정리!

오늘은 자바에서 지원하는 정규표현식을 이용해서 사용자가 설계된 원하는 값만 입력할 수 있도록 코드를 짜보겠습니다. 먼저 예제를 보여드린 뒤 자세히 알아보아요 예제1) 숫자만 허용 1 2 3 4

highcode.tistory.com

https://codechacha.com/ko/java-extract-integers-from-string/

 

Java - 문자열(String)에서 숫자(int)만 추출하는 방법

문자열(String)에서 숫자(int)만 추출하는 방법 여러가지 방법이 있습니다. 정규표현식(regex)를 사용하거나, for 또는 Stream을 사용하여 구현할 수 있습니다. 예제 코드와 함께 구현 방법을 알아보겠

codechacha.com

https://jamesdreaming.tistory.com/85

 

[ 자바 코딩 ] Java replace() vs replaceAll()

안녕하세요. 제임스 입니다. 이번에는 자바 String 관련 함수 중 특정 문자열을 원하는 문자열로 치환하는 함수에 대해 알아 보겠습니다. ■ String replace(CharSequence target, CharSequence replacement) rep..

jamesdreaming.tistory.com

 

Lv. 1 신규 아이디 추천 - 실패

1. 모든 대문자 치환 toLowerCase()

2. charAt(i) 가 알파벳, 숫자, _,-,.이 아닌경우 무시

3. 연속된 . 을 하나로 만들기. 순회하면서 이전문자가 .이라면 무시

4. .이 맨끝에 있는 경우 인덱스 확인후 무시

5. 공백 -> 'a'로 치환

6. 16자 이상이면 15자로 -> 인덱스가 15를 넘어가면 종료

7. 2자리 이하면 마지막 문자 붙이기.

 

 

 

https://programmers.co.kr/learn/courses/30/lessons/72410

 

코딩테스트 연습 - 신규 아이디 추천

카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로

programmers.co.kr

https://velog.io/@minji/2021-%EC%B9%B4%EC%B9%B4%EC%98%A4-%EB%B8%94%EB%9D%BC%EC%9D%B8%EB%93%9C-%EC%8B%A0%EA%B7%9C-%EC%95%84%EC%9D%B4%EB%94%94-%EC%B6%94%EC%B2%9CJava-%EC%A0%95%EA%B7%9C%ED%91%9C%ED%98%84%EC%8B%9D

 

2021 카카오 블라인드 - 신규 아이디 추천(Java, 정규표현식)

앞선 포스트에서 Java에서 정규표현식과 replaceAll() 메서드를 이용해 특정 패턴의 문자열을 치환하는 방법에 대해 알아보았다. https://velog.io/@minji/Java-%EC%A0%95%EA%B7%9C%ED%91%9C%ED%98%84%EC%8B%9D

velog.io

 

 

Lv. 1 숫자 문자열과 영단어 - 성공이었을 것 같은데 날아감.

https://bada744.tistory.com/52

 

[프로그래머스 / Level1] 숫자 문자열과 영단어 (Java)

문제 https://programmers.co.kr/learn/courses/30/lessons/81301?language=java 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자..

bada744.tistory.com

 

Lv. 1 키패드 누르기 - 실패

좌표 성분을 y값만 생각했던 것이 문제.

x,y값을 같이 거리계산에 사용했다면 해결했을 듯.

https://zzang9ha.tistory.com/292

 

프로그래머스[Java] - 키패드 누르기(2020 카카오 인턴십)

programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2,..

zzang9ha.tistory.com

 

Lv. 1 크레인 인형뽑기 게임 - 실패

2차원 ArrayList만들기 주의

 

class Scratch {

//[[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]]
    //[1,5,3,5,1,2,1,4]
    //result : 4
    public static void main(String[] args) {
        int[][] numbers = {{0,0,0,0,0}, {0,0,1,0,3},{0,2,5,0,1},{4,2,4,4,2},{3,5,1,3,1}};
        int[] move = {1,5,3,5,1,2,1,4};



        Scratch.solution(numbers, move);
    }

    public static int solution(int[][] board, int[] moves) {
        int answer = 0;

        StringBuilder sb = new StringBuilder();


        //nxn
        int N = board.length;
        //스택을 표현할 리스트
        ArrayList<Integer>[] arr = new ArrayList[N];
        for(int i = 0; i < N ; i++){
            arr[i] = new ArrayList<Integer>();
        }
        //각 스택에 인형 배치
        for(int j = 0 ; j < N; j++){
            for(int i = N-1 ; i >= 0; i--){
                arr[j].add(board[i][j]);
            }
        }
        for(int stackNumber : moves){
            if (arr[stackNumber-1].size() == 0){ //스택이 비어있다면
                continue;
            }
            int doll = arr[stackNumber-1].remove(arr[stackNumber-1].size()-1); //각 스택별 맨 위에 있는 인형
            sb.append(String.valueOf(doll)); //바구니에 넣기.

        }
        char[] basket = sb.toString().toCharArray();
        int counting = 0;
        int stacking = 0;
        char nowPointer =  'a';
        char prePointer = 'b';
        for (char c : basket){
            nowPointer = c;
            if(nowPointer != prePointer){
                prePointer = c;
                stacking = 0;

            }else{
                if(stacking == 0){
                    counting++;

                }
                stacking++;

            }
        }


        System.out.println(counting);

        return answer;
    }


}

 

728x90

댓글