본문 바로가기

9일지4

항해99 TIL 7일차 (크기가 작은 부분 문자열 / 프로그래머스) 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1 번째 시도 보자마자 윈도우 알고리즘이 떠올랐습니다. n의 길이만큼의 새로운 윈도우 배열을 만들어줍니다. 원도우를 t에 비추어 보며 옆으로 한칸씩 밀어보면 됩니다. 예제 1번을 예시로 들어보겠습니다 t = "314592", n = "271" 윈도우 배열 1 번째 314 윈도우 배열 2 번째 145 윈도우 배열 3 번째 459 . . . 이런 식입니다. 아이디어는 나왔으니 자료구조에 대해 고민해볼 차례입니다. 숫자를 비교해야 하는데 String으로 준 이유가 있을겁니다. 제 생각에는 비교를 용이하기 위해.. 2024. 4. 1.
항해99 TIL 6일차 (삼각 달팽이 / 프로그래머스) 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1 번째 시도 두 가지 생각이 떠올랐다. 1. 배열 자리 순서대로 숫자의 규칙을 찾아보자 2. 숫자가 증가하는 순서대로 자료구조에 집어넣자 처음엔 규칙을 발견하는 것이 알고리즘 짜기 쉽기 때문에 1번 방법을 선택했다. n = 7 과 n =8을 만들어보면서 규칙을 찾아봤는데 쉽지 않아. 결국 2번을 택했다. 로직을 설명 하자면 숫자가 증가하는 것과 마찬가지로 큰 데두리 삼각형에 숫자를 집어넣고 작은 테두리 삼각형에 숫자를 집어넣는 방식이다. ↙ ↙ ↖ ↙ ↙ ↖ 꼭대기에서 부터 시작하여 요런 방식으로 숫자.. 2024. 3. 31.
항해99 TIL 5일차 (숫자 문자열과 영단어 / 프로그래머스) 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1 번째 시도 문자로 나왔을 때 1 번째 글자와 2 번째 글자만 보면 된다. ze가 나오면 0, on가 나오면 1 ..... for문을 돌면서 i, i+1을 확인한다. 숫자라면 i++를 해주고 문자로 표현된 숫자라면 i += 문자열 길이를 해주면 된다(지금 문자가 무엇인지 확인했으므로 바로 다음 문자 확인) import java.util.*; class Solution { public int solution(String s) { StringBuffer sb = new StringBuffer(); for(.. 2024. 3. 30.
항해99 TIL 4일차 (체육복 / 프로그래머스) 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1 번째 시도 문제 파악 2번 학생은 1,3 번 학생의 교복을 빌릴 수 있지만 1번 교복을 빌리는 게 최상의 선택입니다. 왜냐하면 3번 교복을 빌릴시, 교복을 잃어버린 4번 학생이 교복을 못 빌릴 수 있기 때문입니다. 고로, 로직은 자신의 앞 번호에 해당하는 교복이 있으면 빌리고 없으면 뒤에 있는 교복을 빌리는 로직으로 짜겠습니다. 만약 3번 학생이 1번 학생의 교복을 빌리지 못한다면 4 번학생은 1 번학생의 교복을 빌릴 수 있는지 탐색을 안해도 됩니다. +) 까먹고 제한사항을 확인을 안했습니다. 다시 .. 2024. 3. 29.