본문 바로가기
반응형

삼성 A형143

BOJ 23290 : 마법사 상어와 복제 (삼성 SW TEST A형) A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기) 삼성 A형 전체 링크 www.acmicpc.net/workbook/view/1152 (A형 문제집) https://www.acmicpc.net/problem/23290 먼저, 문제 아래에 설명된 상어의 이동 방법에 대해 구현해보자.상어의 이동 방법은 상하좌우 = 1, 2, 3, 4 중 3개를 선택하는 중복 조합이다따라서 43 = 64가지 방법을 미리 구현해둔다.N과 M (4) - 중복 조합 코드에서 outputList를 고치면 된다.상하좌우에 대한 경우의 수는 moveList에 저장해둔다.typedef struct st2{ int move[3];}MOVE;MOVE moveList[70];int mcnt;int list[10];void o.. 2021. 11. 6.
BOJ 23289 : 온풍기 안녕! (삼성 SW TEST A형) A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기) 삼성 A형 전체 링크 www.acmicpc.net/workbook/view/1152 (A형 문제집) https://www.acmicpc.net/problem/23289  좌표에 맞춰서 상하좌우 define과 dr, dc 배열을 정의한다.#define RIGHT (1)#define LEFT (2)#define UP (3)#define DOWN (4)/* 순서대로 오른쪽 : 1, 왼쪽 : 2, 위 : 3, 아래 : 4 */int dr[] = { 0, 0, 0, -1, 1 };int dc[] = { 0, 1, -1, 0, 0 }; 문제를 풀기 위한 구조체를 정의한다. RC = 온도를 체크해야하는 checkPoint의 좌표 (r, c)HEATE.. 2021. 11. 6.
BOJ 23288 : 주사위 굴리기 2 (삼성 SW TEST A형) A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기) 삼성 A형 전체 링크 www.acmicpc.net/workbook/view/1152 (A형 문제집) https://www.acmicpc.net/problem/23288 input은 아래처럼 처리한다. BOJ 14499 : 주사위 굴리기는 (0, 0) 부터 시작하였으나 여기서는 (1, 1)부터 시작한다.#define MAX (20 + 5)int N, M, K;int MAP[MAX][MAX];void input(){ scanf("%d %d %d", &N, &M, &K); for (int r = 1; r  BOJ 14499 : 주사위 굴리기를 참고하여 주사위를 아래와 같이 정의한다.typedef struct st1{ int up; int le.. 2021. 10. 25.
SWEA 1949 : 등산로 조성 (모의 SW 역량테스트) SW 역량테스트 합격하기 A형 강의 오픈!! (인프런 바로가기) 삼성 A형 전체 링크 모의 SW 역량테스트 문제집 등산로 조성 링크  좌표를 저장하기 위한 RC 구조체를 선언한다.MAP의 주변을 벽(-1)으로 만들고 (1, 1)부터 입력을 받는다.입력을 받으면서 가장 높은 봉우리를 찾는다. 그리고 다시 MAP을 돌면서 가장 높은 봉우리를 start 배열에 담는다.#define MAX (10 + 5)int T, N, K;int MAP[MAX][MAX];int visit[MAX][MAX];typedef struct st{ int r; int c;}RC;RC start[MAX * MAX];int scnt;void input(){ int max; scanf("%d %d", &N, &K); for (int r =.. 2021. 5. 23.
SWEA 1953 : 탈주범 검거 (모의 SW 역량테스트) A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기) 삼성 A형 전체 링크 모의 SW 역량테스트 문제집 탈주범 검거 링크  (1, 1)부터 MAP을 입력받는다. 또한 tc 초기화를 위해 0 ~ N + 1을 먼저 0으로 만들어준다.좌표 저장을 위해 RC 구조체를 선언한다.int T, N, M, R, C, L;int MAP[MAX][MAX];int visit[MAX][MAX];typedef struct st2{ int r; int c;}RC;RC queue[MAX*MAX];int rp, wp;void input(){ scanf("%d %d %d %d %d", &N, &M, &R, &C, &L); for (int r = 0; r  파이프 7종에 대해 정의하기 위해 아래의 구조체를 만든다.type.. 2021. 5. 20.
SWEA 2105 : 디저트 카페 (모의 SW 역량테스트) SW 역량테스트 합격하기 A형 강의 오픈!! (인프런 바로가기) 삼성 A형 전체 링크 모의 SW 역량테스트 문제집 디저트 카페 링크  MAP의 좌표는 (1, 1)부터 시작하도록 입력을 받는다.int T, N;int MAP[MAX][MAX];void input(){ scanf("%d", &N); for (int r = 1; r  움직일 수 있는 길은 오른쪽 아래부터 시작하여 시계 방향이므로, dr, dc를 잘 mapping 시킨다.반드시 시계 방향으로 정의해야 한다./* 순서대로 오른쪽 아래, 왼쪽 아래, 왼쪽 위, 오른쪽 위 */int dr[] = { 1, 1, -1, -1 };int dc[] = { 1, -1, -1, 1 }; 매 tc마다 dir = 0 (오른쪽 아래)부터 시계 방향으로 길을 잘 만들어.. 2021. 5. 17.
SWEA 2112 : 보호 필름 (모의 SW 역량테스트) A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기) 삼성 A형 전체 링크 모의 SW 역량테스트 문제집 보호 필름 문제에서 요구한 대로 약품을 투입한다.이 때, DFS에서 매번 MAP을 copy하는 비용을 낮추기 위해 약간의 테크닉을 사용할 수 있다.특성 A가 0, B가 1이므로, MAP[1]에는 0을, MAP[2]에는 1을 저장해둔다.int MAP[3][MAX][MAX];int list[MAX];void input(){ scanf("%d %d %d", &D, &W, &K); for (int r = 1; r  이렇게 해두고, list에는 약품을 투입하지 않을지, A를 투입할지, B를 투입할지를 DFS로 만들면 된다.따라서 성능검사를 통과하는지 check하는 함수는 아래처럼 만들 수 있다.l.. 2021. 5. 14.
SWEA 2117 : 홈 방범 서비스 (모의 SW 역량테스트) SW 역량테스트 합격하기 A형 강의 오픈!! (인프런 바로가기) 삼성 A형 전체 링크 모의 SW 역량테스트 문제집 홈 방범 서비스 링크   가능한 큰 K부터 이익이 있는 한, 가장 큰 집의 수를 찾으면 된다.N x N의 MAP을 모두 서비스하기 위한 K는 N + 1이므로, K = N + 1의 영역부터 영역을 줄여나간다.void input(){ scanf("%d %d", &N, &M); for (int r = 1; r  K에 대한 운영 비용 주어진 공식대로 cost 배열에 저장한다.그리고 서비스 영역을 만들기 위해 AREA 배열에 해당하는 영역을 저장한다.row가 1에서 k가 될 때 까지는 column이 양 옆으로 늘어나고, k + 1부터는 줄어들게 만든다.int AREA[22][MAX * MAX][MAX.. 2021. 5. 11.
SWEA 2382 : 미생물 격리 (모의 SW 역량테스트) A형 필수 알고리즘을 체계적으로 배우고 싶다면? (인프런 바로가기) 삼성 A형 전체 링크 모의 SW 역량테스트 문제집 미생물 격리 링크 미생물의 구조체 BIO에는 미생물의 방향, 개수, 그리고 시뮬레이션을 위해 max값을 저장하도록 만든다.아래의 조건을 보자.    ④ 이동 후 두 개 이상의 군집이 한 셀에 모이는 경우 군집들이 합쳐지게 된다.        합쳐 진 군집의 미생물 수는 군집들의 미생물 수의 합이며,       이동 방향은 군집들 중 미생물 수가 가장 많은 군집의 이동방향이 된다.        합쳐지는 군집의 미생물 수가 같은 경우는 주어지지 않으므로 고려하지 않아도 된다. 합쳐진 군집이 아닌, 각 군집의 미생물 수가 가장 큰 군집의 방향으로 갱신되므로, max를 저장해서 비교해야 한다. .. 2021. 5. 9.
반응형