목록알고리즘 문제 풀이 (61)
굥뷰를 햡시댜
https://programmers.co.kr/learn/courses/30/lessons/12981 코딩테스트 연습 - 영어 끝말잇기 | 프로그래머스 3 [tank, kick, know, wheel, land, dream, mother, robot, tank] [3,3] 5 [hello, observe, effect, take, either, recognize, encourage, ensure, establish, hang, gather, refer, reference, estimate, executive] [0,0] programmers.co.kr 문제에서 하라는 대로 구현만 하면 된다. 처음에 이전 단어를 저장할 문자열 변수를 하나 선언하고 이 문자열의 마지막 글자와 다음 문자열의 첫 글자를 비교한..
https://programmers.co.kr/learn/courses/30/lessons/12909 코딩테스트 연습 - 올바른 괄호 | 프로그래머스 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 ()() 또는 (())() 는 올바른 괄호입니다. )()( 또는 (()( 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 programmers.co.kr 음.. 벡터를 사용했고 스택의 원리를 이용했다. (일 경우 벡터에 추가..
https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 | 프로그래머스 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 aabbaccc의 경우 2a2ba3c(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 programmers.co.kr 시험 볼 때는 40분? 정도 걸렸던 문제인데 다시 풀려고 보니 1시간을 ..
https://www.acmicpc.net/problem/5427 5427번: 불 문제 상근이는 빈 공간과 벽으로 이루어진 건물에 갇혀있다. 건물의 일부에는 불이 났고, 상근이는 출구를 향해 뛰고 있다. 매 초마다, 불은 동서남북 방향으로 인접한 빈 공간으로 퍼져나간다. 벽에는 불이 붙지 않는다. 상근이는 동서남북 인접한 칸으로 이동할 수 있으며, 1초가 걸린다. 상근이는 벽을 통과할 수 없고, 불이 옮겨진 칸 또는 이제 불이 붙으려는 칸으로 이동할 수 없다. 상근이가 있는 칸에 불이 옮겨옴과 동시에 다른 칸으로 이동할 수 있다. 빌딩 www.acmicpc.net 빡구현 bfs, dfs 문제를 찾던 도중 난이도가 가장 낮아 보여서 선택한 문제 생각보다 어려웠고 시간이 오래걸렸다 ㅠㅠ 결국 질문검색 게시판..
https://www.acmicpc.net/problem/2234 2234번: 성곽 문제 대략 위의 그림과 같이 생긴 성곽이 있다. 굵은 선은 벽을 나타내고, 점선은 벽이 없어서 지나다닐 수 있는 통로를 나타낸다. 이러한 형태의 성의 지도를 입력받아서 다음을 계산하는 프로그램을 작성하시오. 이 성에 있는 방의 개수 가장 넓은 방의 넓이 하나의 벽을 제거하여 얻을 수 있는 가장 넓은 방의 크기 위의 예에서는 방은 5개고, 가장 큰 방은 9개의 칸으로 이루어져 있으며, 위의 그림에서 화살표가 가리키는 벽을 제거하면 16인 크기의 방을 얻을 www.acmicpc.net 구현이 빡센 BFS 문제를 풀어보고 싶어 문제집을 찾던 도중 제일 난이도가 쉬워보이는 문제를 찾았다. 그냥 BFS로 빡구현했고 내가 문제를 푸..
https://www.acmicpc.net/problem/17472 17472번: 다리 만들기 2 첫째 줄에 지도의 세로 크기 N과 가로 크기 M이 주어진다. 둘째 줄부터 N개의 줄에 지도의 정보가 주어진다. 각 줄은 M개의 수로 이루어져 있으며, 수는 0 또는 1이다. 0은 바다, 1은 땅을 의미한다. www.acmicpc.net 이번 9월 삼성 A형 역량테스트 복기된 문제로 난이도는 이제껏 풀었던 A형 문제중 어려운 문제에 속한것 같다. 지난번 게리맨더링 문제도 난이도가 꽤 높았고 이번 문제도 꽤 높은걸 보니 이제는 출제자 측에서도 지원자들이 상향평준화 되었다는걸 알아서 올해 하반기 지원자들의 수준을 테스트해보기 위해 삼성 역량테스트 전에 문제의 난이도를 조금 올린듯 하다. 이번 문제를 풀 때는 BF..
https://programmers.co.kr/learn/courses/30/lessons/1829 코딩테스트 연습 - 카카오프렌즈 컬러링북 | 프로그래머스 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr 그냥 bfs 기초 탐색 문제이다. 딱히 풀이는.. 없고 bfs 돌리면 된다. #define _CRT_SECURE_NO_WARNINGS #include #include #include using namespace std; struct POINT { int y, x; }; int m, n; vector picture; int number_of_area ..
https://www.acmicpc.net/problem/1940 1940번: 주몽 첫째 줄에는 재료의 개수 N(1 ≤ N ≤ 15,000)이 주어진다. 그리고 두 번째 줄에는 갑옷을 만드는데 필요한 숫자 M(1 ≤ M ≤ 10,000,000) 주어진다. 그리고 마지막으로 셋째 줄에는 N개의 재료들이 가진 고유한 번호들이 공백을 사이에 두고 주어진다. 고유한 번호는 100,000보다 작거나 같은 자연수이다. www.acmicpc.net 음... dfs를 이용해 조합으로 풀었다. 히든 케이스가 상당히 빈약한듯 하다 다른 방법이 정해일 것 같은데 한 번에 통과해서 놀랐다. #define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; int n..