728x90
반응형

삼성 8

[백준/구현/C++] 21610번 마법사 상어와 비바라기 (삼성 SW 역량 테스트 기출)

https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 문제 해결 방법 먼저 구조체 두개를 선언한다 MOVEINFO 는 구름 이동방향과 거리를 담고 POSITION에는 각 위치마다 현재 구름이 있는지 여부, 사라졌는지 여부, 물의양을 담는다 struct MOVEINFO{ int dir; // 방향 int sp; // 거리 }; struct POSITION{ bool hasCloud = false; // 현재 구름 있는 경우 bool disClo..

[백준/구현/C++] 21608번 상어 초등학교 (삼성 SW 역량 테스트 기출) *

https://www.acmicpc.net/problem/21608 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 일단 머리로 시뮬레이션을 돌려봤는데 내가 생각한 방법으로는 무조건 시간초과가 나올 것 같아서 블로그를 참조했다. https://yabmoons.tistory.com/656 이 블로그를 봤는데 생각도 못한 구조체랑 필요에 맞게 조건을 만들어서 정렬하는 등 배울게 많았다. 다시 풀어보면서 공부해야겠다. 문제 해결 방법 먼저 구조체 두개를 선언한다 학생정보(STUDENT), 자리 배치를 위해..

[백준/구현/백트래킹/C++] 15686번 치킨배달 (삼성 SW 역량 테스트 기출)

https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 문제 해결 방법 처음에 도시의 정보를 입력받을 때 1일때는 vector h에, 2일때는 vector ch에 좌표를 넣어준다 if(x==1) h.push_back({i,j}); // 집인 경우 else if(x==2) ch.push_back({i,j}); // 치킨집인 경우 그리고 전체 치킨집의 수와 m을 비교하여 조건을 나눠서 구현했다 1. 치킨집의 수가 m보다 클때 ( 전체..

[백준/구현/C++] 13458번 시험 감독 (삼성 SW 역량 테스트 기출)

https://www.acmicpc.net/problem/13458 13458번: 시험 감독 첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000) www.acmicpc.net #include using namespace std; int n, b, c; int a[1000001]; long long int result; int main(void) { ios::sync_with_stdio(0); cin.tie(0); cin >> n; for(int i=0; i> a[i]; } cin >> b >> c; result ..

[백준/백트래킹/C++] 14889번 스타트와 링크 (삼성 SW 역량 테스트 기출)

문제집: 삼성 SW 역량 테스트 기출 문제 (baekjoon) www.acmicpc.net 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net #include #include using namespace std; int ss[21][21]; int n; bool isused[21]; int result = 2e9; void count(){ vector s, l; int stot = 0, ltot = 0; for(int i=1; i

[백준/백트래킹/C++] 퇴사 (삼성 SW 역량 테스트 기출)

문제집: 삼성 SW 역량 테스트 기출 문제 (baekjoon) www.acmicpc.net 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net #include #include using namespace std; int n; vector t, p; int result = 0; void work(int k, int tot){ // k일에 일 시작함, total 금액 int day = k + t[k]; // 다음 일할 수 있는 날 if(tot > result && day = n) return; for(int i=day; i> n; for(int i=0; i> x >> y; t.push_back(x); p.push_back(y); } for(int i=0; i

[백준/구현/C++] 14503번 로봇 청소기 (삼성 SW 역량 테스트 기출)

https://www.acmicpc.net/workbook/view/1152 문제집: 삼성 SW 역량 테스트 기출 문제 (baekjoon) www.acmicpc.net https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 문제 해결 방법 1. 동서남북 방향으로 움직을 dx, dy 배열 만들기 2. 청소했을 때 map[x][y]=2 를 해주고, 벽인 경우와 청소한 경우 체크하는 함수 만들기 3. 조건을 나누어 코드짜기 3-1. 4면 회전하고 후진 가..

[백준/구현/C++] 3190번 뱀 (삼성 SW 역량 테스트 기출)

https://www.acmicpc.net/workbook/view/1152 문제집: 삼성 SW 역량 테스트 기출 문제 (baekjoon) www.acmicpc.net https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 문제 해결 방법 1. 현재 위치를 담을 queue를 만들고 현재위치를 표시한다 (사과를 먹었을 때는 몸이 길어져서 pop()을 하지않고, 먹지 않았을때는 맨 끝 위치를 pop() 해준다) 2. 현재의 방향을 저장할 변수를 선언한다 3. 뱀..

728x90
반응형