전체 글

전체 글

    [baekjoon 1516] 게임 개발 (위상정렬, DP) (C++)

    https://www.acmicpc.net/problem/1516 1516번: 게임 개발 첫째 줄에 건물의 종류 수 N(1 ≤ N ≤ 500)이 주어진다. 다음 N개의 줄에는 각 건물을 짓는데 걸리는 시간과 그 건물을 짓기 위해 먼저 지어져야 하는 건물들의 번호가 주어진다. 건물의 번호는 1부 www.acmicpc.net 입력으로 각 건물을 짓는데 걸리는 시간과, 이 건물을 짓기 위해서 선행되어야 하는 건물의 번호가 주어진다. 즉, 건물을 짓는 순서를 그래프로 나타내면 DAG(Directed Acyclic Graph) - 사이클을 갖지 않는 단방향 그래프가 되고, 이를 통해 노드 간 고유 순서를 위배하지 않으면서 정렬하는 위상 정렬을 이용할 수 있다. 위상 정렬의 방법은 1. 스택을 이용하는 방법과 2...

    [baekjoon 1339] 단어 수학 (브루트포스, 그리디) (C++)

    https://www.acmicpc.net/problem/1339 1339번: 단어 수학 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대 www.acmicpc.net 알파벳 대문자로 이루어진 단어에 0~9까지 숫자를 대입해서 그 결과가 가장 큰 숫자를 찾는 문제이다. 예를 들어 ABC + AAA이면 A에 9, B에 8, C에 7을 대입하면 987+999 = 1986이 결과가 되는 것이다. 즉, 알파벳 대문자가 나온 빈도수와 자릿수에 맞춰서 가장 큰 9부터 가장 작은 0을 어떻게 대입해야 할지를 정해줘야 한다. 방법으로는 1. 완전 탐색으로 모든 조합으로 ..

    [프로그래머스 LV2] 최댓값과 최솟값 (문자열) [C++]

    https://programmers.co.kr/learn/courses/30/lessons/12939 코딩테스트 연습 - 최댓값과 최솟값 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를 programmers.co.kr 간단한 문자열과 정렬 문제였다. #include #include #include #include #include using namespace std; string solution(string s) { vector v; string answer = ""; istringstream ss(s); string buffer = ""; while..

    [프로그래머스 LV2] 튜플 (문자열) / 2019 카카오 개발자 겨울 인턴십) [C++]

    https://programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 즉, 원소의 개수가 n개이고, 중복되는 원소가 없는 튜플 (a1, a2, a3, ..., an)이 주어질 때(단, a1, a2, ..., an은 자연수), 이는 다음과 같이 집합 기호 '{', '}'를 이용해 표현할 수 있습니다. {{a1}, {a1, a2}, {a1, a2, a3}, {a1, a2, a3, a..

    [프로그래머스 LV2] 카카오프렌즈 컬러링북 (BFS, DFS) / 2017 카카오 코드 예선) [C++]

    [프로그래머스 LV2] 카카오프렌즈 컬러링북 (BFS, DFS) / 2017 카카오 코드 예선) [C++]

    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 카카오 프렌즈 컬러링북 출판사의 편집자인 어피치는 네오에게 컬러링북에 들어갈 원화를 그려달라고 부탁하여 여러 장의 그림을 받았다. 여러 장의 그림을 난이도 순으로 컬러링북에 넣고 싶었던 어피치는 영역이 많으면 색칠하기가 까다로워 어려워진다는 사실을 발견하고 그림의 난이도를 영역의 수로 정의하였다. (영역이란 상하좌우로 연결된 같은 색상의 공간을 의미한다.) 그림에 ..

    [프로그래머스 LV2] 단체사진 찍기 (조합) / 2017 카카오 코드 본선) [C++]

    https://programmers.co.kr/learn/courses/30/lessons/1835 코딩테스트 연습 - 단체사진 찍기 단체사진 찍기 가을을 맞아 카카오프렌즈는 단체로 소풍을 떠났다. 즐거운 시간을 보내고 마지막에 단체사진을 찍기 위해 카메라 앞에 일렬로 나란히 섰다. 그런데 각자가 원하는 배치가 모두 programmers.co.kr algorithm STL의 next_permutation의 존재를 알게 된 문제다. 항상 순열이나 조합을 직접 구현해서 사용했었는데 종종 사용하면 편할 것 같다. 매번 순열을 구한 뒤, 주어진 조건에 해당하는지 확인 후 확인하면 개수를 세주는 식으로 진행하면 된다. #include #include #include #include using namespace s..

    [2021 네이버 부스트캠프 6기 웹&모바일] 1차 코딩테스트 결과

    [2021 네이버 부스트캠프 6기 웹&모바일] 1차 코딩테스트 결과

    오늘 저번 주 목요일에 응시했던 1차 코딩테스트 결과가 발표되었다. 객관식 10문제에 알고리즘 2문제가 출제되었고 생각보다는 알고리즘이 까다로웠다. 유형은 문자열 + 구현 느낌의 문제가 출제되었다. 작년 겨울에 부캠 AI를 2차에서 떨어졌는데 이번에는 2차도 잘 봐서 최종합격했으면 좋겠다.

    삼성 SDS 2021 하계 알고리즘 특강 입과 테스트 결과

    삼성 SDS 2021 하계 알고리즘 특강 입과 테스트 결과

    4학년 재학생 + 컴공 복전으로 지원요건에 해당되어 이번 2021 하계 알고리즘 특강에 신청했다. 주어진 5일간 입과 테스트를 봤고 (어려웠다. 난 5문제 중 3문제를 제출했고 2문제 100점 1문제 22점을 맞았다.) 그 결과 1 차수 입과자로 선발되었다. 알고리즘은 이번 학기에 전공을 통해 이론적으로 배운 적은 있지만 이렇게 알고리즘 특강 형식으로 문제 풀이를 배우는 경험은 처음이다. 어차피 이번 방학에 코딩 테스트를 꾸준히 준비하려고 했는데 아주 좋은 기회다.