본문 바로가기
반응형

삼성 PRO60

BOJ 1707 : 이분 그래프 삼성 B형 전체 링크 www.acmicpc.net/problem/1707 그래프를 만들고 DFS나 BFS 탐색을 하면 된다. tc가 K개 있으므로, 초기화를 잘 해줘야 한다. 문제 풀이 방법은 node를 탐색하면서 색칠을 하면 된다. 색칠을 하다가, 이미 색칠이 된 곳을 검사해서 색깔이 다르면 "NO"가 된다. 3 - 2(빨강) = 1(검정) / 3 - 1(검정) = 2(빨강)이 되므로 if (!DFS(p->node, 3 - color)) return 0; 와 같은 방식으로 색칠하면 된다. 1 -1 을 하는 방법도 가능하다. DFS 풀이는 아래와 같다. #include int K, V, E; typedef struct st { int node; struct st *next; }NODE; NODE HEAD.. 2021. 2. 15.
메모리 풀 (Memory Pool) 삼성 B형 전체 링크 삼성 C형 전체 링크 참고 - 메모리 풀 Memory Pool - 메모리 풀 vs malloc 속도 비교 - 링크드 리스트 Linked List - 링크드 리스트 Linked List Tail ver - 더블 링크드 리스트 Double Linked List - 더블 링크드 리스트 Double Linked List Tail ver 삼성 B형에서는 c++ library 사용이 불가능하지만, 유일하게 malloc은 사용이 가능하다. swexpertacademy.com/main/sst/intro.do 하지만 이건 100% 함정이다. (100% 쓸모가 없다.) 아직도 가끔 외부 강사들이 malloc, free, new, delete를 멋지게(?) 사용하는 방법을 알려주는 것 같지만... 애초.. 2021. 2. 15.
BOJ 2606 : 바이러스 (Linked List) 삼성 B형 전체 링크 삼성 C형 전체 링크 www.acmicpc.net/problem/2606 참고 - 메모리 풀 Memory Pool - 메모리 풀 vs malloc 속도 비교 - 링크드 리스트 Linked List - 링크드 리스트 Linked List Tail ver - 더블 링크드 리스트 Double Linked List - 더블 링크드 리스트 Double Linked List Tail ver 삼성 SW A형 입문으로 대부분 풀어보게 되는 바이러스 문제를 Linked List로 풀어보자. N이 작기 때문에 보통 100 x 100 2차원 배열을 선언해서 그래프를 만들지만, B형 연습을 위해 Linked List를 만들어 보자. Linked List는 메모리 풀 방법으로 만들어야 한다. 먼저 예제 입.. 2021. 2. 15.
B형에 필요한 최적화 코드 (2) 삼성 B형 전체 링크 참고 - B형에 필요한 최적화 코드 (1) - B형에 필요한 최적화 코드 (2) - 함수의 매개변수와 배열의 register 속도 비교 - 삼성 B형 디버깅 Tip - 비주얼 스튜디오 output.txt 설정하기 - 삼성 SW 역량 시험 환경에서의 인라인 함수 - Visual Studio LNK1168: 쓰기용으로 열 수 없습니다 해결방법 B형에 필요한 최적화 코드 (1)은 필수 최적화이고 기억하기 쉽다. ++i 사용하기, register로 선언하기, 전역 변수는 복사해서 사용하기로 외울 필요도 없고, 마지막 점검 때, 코드만 조금 다듬으면 된다. (2)에서는 많이 사용하지는 않지만, 간단한 것을 모아보았다. 4) if/else vs switch/case 5) 비트 연산 : 나누기 .. 2021. 2. 15.
B형에 필요한 최적화 코드 (1) 삼성 B형 전체 링크 참고 - B형에 필요한 최적화 코드 (1) - B형에 필요한 최적화 코드 (2) - 함수의 매개변수와 배열의 register 속도 비교 - 삼성 B형 디버깅 Tip - 비주얼 스튜디오 output.txt 설정하기 - 삼성 SW 역량 시험 환경에서의 인라인 함수 - Visual Studio LNK1168: 쓰기용으로 열 수 없습니다 해결방법 1) ++i (전위 증가) vs i++ (후위 증가) 비교. 2) register 변수를 사용하자. 3) 전역 변수(global) 접근을 최소화 하자. 1) ++i (전위 증가) vs i++ (후위 증가) 비교. 전위 증가는 값을 먼저 증가 시키고 return한다. 후위 증가는 원래 값을 먼저 받고 나중에 증가한다. 하지만 후위 증가의 경우는 임시.. 2021. 2. 15.
삼성 SW 역량 테스트 B형 Reference 코드 삼성 B형 전체 링크 swexpertacademy.com/main/main.do 상단의 LEARN -> Visual Reference Code에 참조 코드가 있다. Data Structure, Algorithm에 대한 reference code가 실제 시험에도 제공된다. (문제 왼쪽 상단에 Reference 탭 제공) 필요한 코드를 정리해보면. Data Structure 1) Stack - 배열로 간단히 만들 수 있다. 참조 코드처럼 만들면 느리다. (스택 예시 참고) 2) Queue - 배열로 간단히 만들 수 있다. 참조 코드처럼 만들면 느리다. (큐 예시 참고) 3) Priority Queue - B형 필수, 못 외우겠다면 참조 코드도 나쁘진 않지만, 자기만의 코드를 만들도록 하자. - 특히 참조 코.. 2021. 2. 15.
반응형