목록Coding/코딩테스트 준비 (30)
얼레벌레

문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/17684 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 에이블스쿨 과정 중에서 코딩테스트 진행할 때 나왔던 문제랑 거의 동일한 문제였다. 문제 해결 처음엔 main 함수 안에서 msg 길이만큼 반복하며 문자를 하나씩 추가하면서 해결하려고 했는데, 생각해보니 '문자를 하나씩 추가' 한다는 부분에서 독립적으로 함수를 하나 만들어 줘야 겠다는 생각을 했다. (문자를 하나씩 추가를 언제까지 해야하는지 결정해야 함, 문자를 하나씩 추가하면..

문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 생각보다 너무 빨리 풀어서 이게 왜 Lv.2인지 생각하게 된 문제였다. tangerine 원소가 1000만개 였기 때문에, for loop으로 각 원소에 대해 하나하나 접근해 카운트해도 문제 없어 보였다. 그 후 내림차순 sort를 통해 개수가 가장 많은 귤부터 정렬을 하고, k값과 answer을 갱신하며 문제를 해결했다. 코드 #include #include #includ..

서론 에이블스쿨에서 친해진 사람들이랑 토요일마다 코테 스터디를 시작했다. 뒷심 없는 나에게 너무 필요한 모임.. 말도 잘 통하고 같이 있으면 즐거운데다가 할 땐 하는 사람들이라서 스터디하는 게 너무 행복하다. 과연 한 달 뒤에도 그럴진.. 문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 오늘 날짜(today 문자열)가 주어지고, 각 약관의 유효기간 벡터(terms)가 주어진다. 그러면 개인정보 벡터(privacies)를 받아, 오늘..

문제 https://www.acmicpc.net/problem/15684 15684번: 사다리 조작 사다리 게임은 N개의 세로선과 M개의 가로선으로 이루어져 있다. 인접한 세로선 사이에는 가로선을 놓을 수 있는데, 각각의 세로선마다 가로선을 놓을 수 있는 위치의 개수는 H이고, 모든 세로선 www.acmicpc.net 풀이 처음에 사다리를 어떻게 세팅해야 될 지 몰라서 헤맸다. 초반에 감을 못잡으니까 시작을 할 수 없어서 구글링을 통해 역시나 얍문님 풀이를 참조했다. 나는 visited[x][y] 배열을 사다리 연결 상태를 표시하기 위해 사용했는데, visited[x][y] = true는, x번째 라인에 세로선 y와 y+1 을 연결하는 선이 존재한다는 뜻이다. 크게는 selectLine 함수로 사다리 놓..

문제 https://www.acmicpc.net/problem/16235 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net 시간초과 코드 봄, 여름, 가을, 겨울에 대한 함수를 만들고 sol함수에서 K년 만큼 반복하도록 했다. 그리고 살아있는 나무 vector 배열 (배열의 각 인덱스는 (x, y)를 한 줄로 바꾼 인덱스이며, 각 벡터에 들어있는 원소는 살아있는 나무의 나이이다), 죽은 나무 vector 배열, 양분 배열을 만들었다. 봄 살아있는 나무 vector 배열을 탐색한다. 각 벡터에서 어..

문제 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 시간초과 코드 처음엔 재귀함수로 풀었다. 입력받을 때 아기상어의 위치를 저장하고 각 칸을 탐색하며, 자신의 몸집보다 작은 물고기를 찾는다. 찾았을 경우 상어의 위치에서 해당 물고기까지의 거리를 계산하는데 (최단 경로이기 위해), 이 때 재귀함수를 썼다. 한마리라도 찾았을 경우에는 check=true 를 만들어준다. 최종적으로 최단경로를 저장한 후에는 상어가 그 쪽으로 이동해 물고기를 ..

문제 https://www.acmicpc.net/problem/21609 21609번: 상어 중학교 상어 중학교의 코딩 동아리에서 게임을 만들었다. 이 게임은 크기가 N×N인 격자에서 진행되고, 초기에 격자의 모든 칸에는 블록이 하나씩 들어있고, 블록은 검은색 블록, 무지개 블록, 일반 블록 www.acmicpc.net 삽질의 여정 저 블록 그룹 설명을 보고, 나는 각 그룹의 기준 블록이 무조건 행의 번호가 작고, 열의 번호가 작은 블록인 줄 착각했다. ('무지개 블록이 아닌' 고려 안함) 그리고 오토플레이 설명에서 블록 삭제 과정의 3번째 조건인 '기준 블록의 우선순위'에 대해서, 행의 번호가 작고 열의 번호가 작은 블록이 우선인 줄 알았다. (큰게 우선임) 그래서 처음에는 왼쪽 위 (0, 0) 에서부..

문제 https://www.acmicpc.net/problem/21608 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 이 문제는 몇 달 전에 시도했다가 실패했는데 재도전한 문제다! 이번에 해결해서 뿌듯했다. 풀이 몇 달 전에 시도했을 때는 다른 블로그 글들 보면서 코드 짰는데, 지금은 혼자 짰다!! 아주 장족의 발전이다 ~! 나는 저렇게 밴다이어그램처럼 반복문 scope를 그리면서 접근하는 게 이해가 잘 됐다. 문제에서 준 조건들이 번호가 매겨져 있어서 각각 요구하는 것들이 명확했다. (다른 문제..

문제 https://www.acmicpc.net/problem/23291 23291번: 어항 정리 마법사 상어는 그동안 배운 마법을 이용해 어항을 정리하려고 한다. 어항은 정육면체 모양이고, 한 변의 길이는 모두 1이다. 상어가 가지고 있는 어항은 N개이고, 가장 처음에 어항은 일렬로 바 www.acmicpc.net 문제 설명부터 스압인 악랄한 문제다;; 진짜 뭐 이런 문제를 생각해내지? 문제 만드는 사람들은 개천재가 아닐까 풀이 역시나 얍문님 코드를 참고했다. 나같은 알못러(알고리즘 못하는사람이라는 뜻ㅋ)한테는 다른사람 코드 참고해서 푸는게 최선인듯.. (적어도 나한텐 그게 맞는 느낌 ㅠ) 코테 준비 그동안 제대로 안했으니~~ 문제가 다 잘 풀릴리가 없지~ 하며 매일 정신승리중이다. 아 암튼 사진에 있..

얼떨결에 삼전을 붙어서 오늘부터 코테 보기 전까지 코테공부 빡세게 해야 한다. 서류 합격이 좋기도 하지만 그만큼 스트레스로 다가온다.. 뭔가 다른 곳들 서합과는 또다른 느낌.. 역시 삼성은 낭만인가? 암튼 오늘부터 16일 전까지 하루에 한 문제씩도 못풀면 나는 사람도 아니다!!!! 제발 코테 공부하자 문제 설명 bfs, dfs 문제 안 푼지 너~무 오래돼서 감을 잃었지만 이 문제는 읽으면서 생각하니까 완전 bfs 문제였다. 그리고 구글링해보니 bfs가 맞았다 ㅎ (감이 죽지 않았군) 자세한 구현 방법은 잊어버려서 구글링하면 제일 먼저 나오는 '얍문'님 포스팅을 참조했다. (이 분 없었으면 코테 문제들 거의 손도 못댔을 듯..) 풀이 얍문님 포스팅을 보고 위와 같이 이해를 했다. 아무튼... bfs에 대한..