본문 바로가기

PS81

[프로그래머스 *Java] 영어 끝말잇기 https://school.programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한시간 : 30분 이내 로직을 구현할 때, 고려해야 할 부분을 숫자를 매겨 정리하면 4가지로 정리할 수 있다. 1. 단어가 중복될 때 어떻게 처리해야할까? 2. 끝말잇기가 아닌, 다른 단어를 말할 경우? 3. 틀린 사람이 몇 번째 차례 때 틀린 것인지? 4. 틀린 사람이 누구인지? 위 네 가지만 고려하면 쉽게 문제를 풀 수 있다. 아래 코드를 보면, HashSet 보면 단어를 담아주기 위한.. 2022. 7. 28.
[프로그래머스 *Java] - 큰 수 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한 시간 : 1시간 이내 문제설명은 짧지만, 로직을 짜기 위한 생각을 오래 해야했던 문제였다. 로직 구현은 코드를 보고 실명하는게 빠를 거 같다. 코드를 확인해보자. 전체 코드 class Solution { public String solution(String number, int k) { StringBuilder answer = new StringBuilder(""); int start .. 2022. 7. 23.
[프로그래머스 *Java] - 카펫 https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한시간 : 45분 이내 규칙을 찾으면 되는 문제였다. 생각했던 Flow를 적어보도록 하겠다. 1. brown + yellow == return 값 두 데이터의 곱이다. 2. 일단 brown + yellow 더한 값을 for문을 통해 i가 1부터 시작해서 i로 나눠 떨어지는 여러 두 수 중 한 가지 경우가 답이다. 3. 정사각형, 직사각형 어떤 도형이 될진 모르겠지만, 세로는 무조건 3 이상.. 2022. 7. 21.
[프로그래머스 *Java] - 위장 https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한시간 45분 이내 처음에 문제를 어렵게 생각했다. 주어진 데이터에 맞게 위장할 수 있는 의상을 중복되지 않게 조합을 해서 해당 조합이 몇 개 인지를 찾는 문제다. 그냥 갯수만 풀면 되는 문제였는데 문제를 정말 꼬아서 생각해서 dfs를 돌려 조합을 맞춰야하는 지 알았다. 생각해보니 처음 생각한 방법은 복잡해져서 문제에서 요구하는 바가 아닌 거 같고, 조합할 수 있는 의상 갯수를 묻는 문제니.. 2022. 7. 20.
[프로그래머스 *Java] - H-Index https://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한시간 : 45분이내 이번 문제는 문제를 이해하는 게 어려웠다. 만약에 H-Index 라는 개념을 알고있다면, 조금 문제를 풀기는 쉬웠을 것이다. 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다. 문제 문장 중에 윗말이 가장 중요한 거 같다. 논문 당 피인용 횟수의 데이터를 받은.. 2022. 7. 20.
[프로그래머스 *Java] - 2 x n 타일링 https://school.programmers.co.kr/learn/courses/30/lessons/12900 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한시간 : 30분 이내 소요시간은 10분정도 되는 거 같다. 이번에 백준에서 비슷한 문제를 풀어서 그런지, 금방 접을 했는데 DP 문제가 워낙 오래간만에 풀어서 어떤식으로 접근을 했었는 지? 기억을 더듬느라 더 시간이 오래 걸린 거 같다. 그리고 문제에서 언급했지만, 중요한 부분은 경우의 수가 많아 질 수 있으므로, 경우의 수를 1,000,000,007으로 나눈 나머지를 return해주세요.. 2022. 7. 18.
[프로그래머스 *Java] - 배달 https://school.programmers.co.kr/learn/courses/30/lessons/12978 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한 시간 : 1시간 간만에 그래프 문제를 풀어서 그런지, 그냥 공부하듯이 문제를 푼 거 같다. 이 문제는 그래프 문제에서 다익스트라, 플로이드 와샬 알고리즘을 이용해서 풀수 있었다. 플로이드 와샬 알고리즘을 접해본 적이 없어, 관련 알고리즘을 찾아보며 공부한 뒤 문제에 적용해서 문제를 풀었다. 알고리즘 기법 Flow 1. 초기 세팅 해주기. (0, INF) 2. Input 값(양방향)으로 .. 2022. 7. 16.
[프로그래머스 *Java] - 괄호 회전하기 https://school.programmers.co.kr/learn/courses/30/lessons/76502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 제한시간 : 40분 이내 시간 내에 푼 문제입니다. 로직은 전체적으로 두 가지로 나눌 수 있었습니다. 1. 왼쪽으로 shift 하면서 shift 한 값을 다시 문자열 끝에 붙여주는 작업, 2. shift 문자열을 가지고 올바른 괄호인지 판별 괄호 종류가 총 세 가지라, 괄호 쌍을 맞추게 된 건 집어 넣지 않고 pop() 하는 과정이 있는데, 그 부분은 HashMap 자료구조를 이용해서 괄호 .. 2022. 7. 15.