coding_test

coding_test/BAEKJOON

백준 2178번 C++ 풀이

https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 시간 제한 메모리 제한 solved.ac 티어 1초 192MB 실버 1 문제 N×M크기의 배열로 표현되는 미로가 있다. 1 0 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1 미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 작성하시오..

coding_test/programmers

lv2 / 피로도 / C++

https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 사실 처음 봤을 때에는 그리디나 DP로 접근해야할 것 같았는데, 개수가 생각보다 많지 않아서, 완전탐색으로 진행해도 무방할 것 같았다. 모든 경우를 따지기 위해, C++의 next_permutation함수를 통해 순열을 구성했고, 이를 통해 모든 경우를 탐색했다. #include #define ALL(X) X.begin(),X.end() using namespace std; int solution..

coding_test/programmers

lv1 / 성격 유형 검사 / 카카오 / C++

https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 그냥 구현문제이다. map을 통해 모든 성격 유형에 대해 점수를 매기고, 더 큰 점수를 가진 성격유형을 붙여주면 된다. #include using namespace std; string solution(vector survey, vector choices) { // 변수 선언 및 초기화 string answer = ""; array category = {'R', 'T', 'C', 'F', 'J'..

coding_test/programmers

lv2 / 양궁대회 / 카카오 / C++

https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr dfs를 통한 완전탐색 기법은 아직도 감을 잘 못잡겠다. 솔직히 완전탐색을 해야한다는 것만 알아채고, 딱히 뭘 더 할 수 없었다. 공부는 해도해도 부족하고 새로운 것 같다. dfs를 통해 화살을 적절히 배치해준다. 적절히 배치라는건 무슨 뜻일까? 양궁대회 운영진들은 라이언을 억까(?)하기 위해 규칙을 불리하게 만들었다. 그래서 어피치가 K점에 a개의 화살을 쐈다면, 라이언에게는 두가지의 선택지가 ..

coding_test/programmers

lv2 / K진수에서 소수 개수 구하기 / 카카오 / C++

https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 비록 N이 100만까지밖에 안되지만, 이를 K진수로 변환하면 더 커질수 있기 때문에, K진수로 변환한 값은 문자열로 받아서 처리하는게 안전하다고 판단했다. 이후, 0을 기준으로 숫자를 쪼개고, 각각 소수판별을 해주면 된다. 만약 테스트 케이스를 통과하지 못했다면, 필자의 글이 도움이 되길 바라며 필자가 겪은 오류와 오답을 적어보도록 하겠다. 테스트케이스 1번은 극한 케이스이다. (맨 뒤에 나오는 ..

coding_test/programmers

lv2 / 두 큐 합 같게 만들기 / 카카오 / C++

https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 일단, 문제에서 친절하게도 오버플로우의 가능성을 미리 말해줬기 때문에, 안전하게 long long 이상의 자료형을 사용하자. 필자는 uint64_t 자료형을 사용했다. 두 큐의 합이 같아지도록 큐의 FIFO특성을 이용하여 문제를 풀어야 한다. queue1, queue2의 원소의 총합을 sum1, sum2라고 한다면, 우리는 원소를 적절하게 push, pop하여 sum1 == sum2가 되도록 만..

coding_test/BAEKJOON

백준 6236번 C++ 풀이

https://www.acmicpc.net/problem/6236 6236번: 용돈 관리 현우는 용돈을 효율적으로 활용하기 위해 계획을 짜기로 하였다. 현우는 앞으로 N일 동안 자신이 사용할 금액을 계산하였고, 돈을 펑펑 쓰지 않기 위해 정확히 M번만 통장에서 돈을 빼서 쓰기로 www.acmicpc.net 시간 제한 메모리 제한 solved.ac 티어 1초 128MB 실버 2 문제 현우는 용돈을 효율적으로 활용하기 위해 계획을 짜기로 하였다. 현우는 앞으로 N일 동안 자신이 사용할 금액을 계산하였고, 돈을 펑펑 쓰지 않기 위해 정확히 M번만 통장에서 돈을 빼서 쓰기로 하였다. 현우는 통장에서 K원을 인출하며, 통장에서 뺀 돈으로 하루를 보낼 수 있으면 그대로 사용하고, 모자라게 되면 남은 금액은 통장에 ..

coding_test/BAEKJOON

백준 2583번 C++ 풀이

https://www.acmicpc.net/problem/2583 2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 시간 제한 메모리 제한 solved.ac 티어 1초 128MB 실버 1 문제 눈금의 간격이 1인 M×N(M,N≤100)크기의 모눈종이가 있다. 이 모눈종이 위에 눈금에 맞추어 K개의 직사각형을 그릴 때, 이들 K개의 직사각형의 내부를 제외한 나머지 부분이 몇 개의 분리된 영역으로 나누어진다. 예를 들어 M=5, N=7 인 모눈종이 위에 과 같이 직사각형 3개를 그렸다면, 그 나..

CodeJin
'coding_test' 카테고리의 글 목록 (4 Page)