[삼성기출/C++] 메두사와 전사들
·
PS/CodeTree
삼성 공채 시즌이 다시 한 번 돌아왔습니다. 모두 화이팅입니다. 그럼 달려봐야겠죠.. 알고리즘 분류너비 우선 탐색 (BFS)깊이 우선 탐색 (DFS)기하 (Gemometry)시뮬레이션 문제 설명문제가 너무 길어서 사이트를 참고하자.https://www.codetree.ai/ko/frequent-problems/problems/medusa-and-warriors/description?introductionSetId=&bookmarkId= 삼성 코딩테스트 기출 문제 설명: 메두사와 전사들 | 코드트리삼성전자 코딩테스트 기출 문제 메두사와 전사들의 상세 설명입니다. 문제 요구사항을 정확히 파악하고 효율적인 알고리즘을 설계해보세요.www.codetree.ai 문제 접근삼성기출은, 일반적인 코딩 테스트의 "원리"..
[C++] 2749: 피보나치 수 3
·
PS/Baekjoon
https://www.acmicpc.net/problem/2749 피보나치 수를 구하는 재미있는 방법을 알게 되어 공유한다. 알고리즘 분류분할 정복다이나믹 프로그래밍 문제설명  문제는 아주 간단하다. 다만, n이 1e18이다. 일단 n은 long long으로 받아야 한다. 그리고 MOD값은 1e6이므로, 결과값 역시 안전하게 long long으로 받아주자. 문제접근 우선 피보나치 수열의 점화식은 다음과 같다. 이 방법으로 f(n)을 구할 수 있지만, n이 1억을 넘어가기 때문에 시간 초과에 해당한다. 즉 O(logN)으로 풀어야 한다. 그러면 어떻게풀어야할까? O(logN)으로 해결할 수 있는 알고리즘은 많지 않다. 분할 정복 말고는 풀이를 찾기 어려울 것이다. 따라서 이 문제를 분할 정복으로 풀어보자...
[C++] 11401: 이항 계수 3
·
PS/Baekjoon
https://www.acmicpc.net/problem/11401  이항 계수 3이라는 문제를 풀었는데, 여기서 사용된 수학 개념과 테크닉은 향후 유용하겠다 싶어서 정리한다. 사용되는 기법유클리드 호제법페르마의 소정리O(logN) 거듭제곱 모듈로 계산(분할 정복)다이나믹 프로그래밍 문제의 접근문제는 매우 간단하다. 이항 계수를 1e9+7로 나눈 나머지를 구하면 된다. 일반적으로 이항 계수를 구하는 방법은 다음과 같이 팩토리얼을 이용한다. 여기서 MOD 연산이추가되어야 할 것이다. 최대 400만 팩토리얼을 구해야 하기 때문에 MOD를 통해 줄여야 한다.  우선 여기까진 당연히 맞다. 그러면 계산을 다음과 같이 해야할까? 아니다. 뭔가 이상하다. modulo 연산은 다음과 같이 덧셈(=뺄셈)과 곱셈에만 적..
[삼성기출/C++] 포탑 부수기
·
PS/CodeTree
https://www.codetree.ai/training-field/frequent-problems/problems/destroy-the-turret?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  1번문제치고 상당한 복잡도를 가진 포탑 부수기 문제를 풀어보았다. 삼성의 기출 유형은 모두 들어가서 꼭 풀어봐야 할 문제라고 생각한다. 다음과 같은 고민들을 하고 문제에 접근하면 된다. 1. 공격자, 피공격자 포탑의 선정 꽤나 기준이 복잡해 보이는데, 다행스러운 점은 공격자와 피공격자의 선..
[삼성기출/C++] 메이즈 러너
·
PS/CodeTree
https://www.codetree.ai/problems/maze-runner?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  꽤 참신한 아이디어가 많이 담긴 문제였다. 거두절미하고 문제를 살펴보자. 1. 참가자를 "어떤 자료구조"에 담아야할까?  우선 여기서부터 선택지가 나뉠 것이다. 우선 지금까지 내가 했던 방법은, 커스텀 구조체를 만들어서 넣어주는 것이다. 이 문제에서는 y,x좌표 및 살아있는지 여부가 중요하므로 live 어트리뷰트를 추가해서 다음과 같이 구성할 수 있을 것이다...
[삼성기출/C++] 왕실의 기사 대결
·
PS/CodeTree
https://www.codetree.ai/training-field/frequent-problems/problems/royal-knight-duel?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  방금 따끈따끈하게 3급 공채 코딩테스트 장소 공지가 올라왔다! 일요일 오전반이다. 일요일까지 열심히 달려보자.  이번에 풀 문제는 23년도 하반기 오전 1번 문제이다! 마침 내가 시험을 보는 날에 해당하는 1번 문제이니, 깔끔하게 다 풀어보도록 하자. 문제가 어렵지는 않지만, 실수하기는 쉬운..
[삼성기출/C++] 루돌프의 반란
·
PS/CodeTree
https://www.codetree.ai/training-field/frequent-problems/problems/rudolph-rebellion?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  빡구현중에 손꼽히는 복잡함을 가진 23년도 기출 "루돌프의 반란"을 풀어보았다. 이 문제가 복잡한 점은, "모든 이동"에 대해 모두 다른 로직을 작성해주어야 한다는 점이다. 이 경우에는 최대한 함수의 배치를 잘 해서 실수를 줄이는 것이 관건이라고 할 수 있다.그렇다면 이 문제를 풀기 위한 함..
[삼성기출/C++] 색깔 트리
·
PS/CodeTree
https://www.codetree.ai/problems/color-tree?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  24년 전반기 오후 2번 문제 색깔 트리를 풀었다. 플래티넘4 정도의 난이도로 최근 가장 어려운 문제였고, 시행착오 끝에 성공하였다. 이 문제를 풀 수 있었던 이유는, 2~3년 전 기출에서도 비슷한 형식의 update tree 문제가 있었기 때문이다. 어려울 수도 있지만 일단 풀어 보자. 이 문제를 풀기 위해서는 다음과 같은 함수를 완성해야 한다. 1. MAX_..
[삼성기출/C++] 코드트리 투어
·
PS/CodeTree
https://www.codetree.ai/training-field/frequent-problems/problems/codetree-tour?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai  원래 2번 문제는 어렵지만, 이 문제는 유독 쉽게 나와서(골드2) 시도해보았고, 1번의 시도에 AC를 달성하였다!!(뿌듯) 하지만 2번 치고 쉬운 거지, 시간 초과를 유발하는 여러 시스템이 존재한다. 이 함정들을 모두 찾아내고, 해결 방법을 고민해 보자.  1. 최단 거리 알고리즘으로 무엇을 채택해..
[C++] 2024 KAKAO WINTER INTERNSHIP - 1. 가장 많이 받은 선물
·
PS/Programmers
https://school.programmers.co.kr/learn/courses/30/lessons/258712 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 설명선물을 직접 전하기 힘들 때 카카오톡 선물하기 기능을 이용해 축하 선물을 보낼 수 있습니다. 당신의 친구들이 이번 달까지 선물을 주고받은 기록을 바탕으로 다음 달에 누가 선물을 많이 받을지 예측하려고 합니다.두 사람이 선물을 주고받은 기록이 있다면, 이번 달까지 두 사람 사이에 더 많은 선물을 준 사람이 다음 달에 선물을 하나 받습니다.예를 들어 A가 B에게 선물을 5번 줬고, B가 A에게..
gg4ever1724
'알고리즘' 태그의 글 목록