728x90
반응형

알고리즘 154

[백준/백트래킹/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. 뱀..

[프로그래머스/2019 KAKAO/C++] 오픈채팅방

https://school.programmers.co.kr/learn/courses/30/lessons/42888 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include #include #include #include using namespace std; vector solution(vector record) { vector answer, state; map user; for(int i=0; i> token) str[index++] = token; if(str[0] == "Enter"){ state.push_back..

알고리즘 2023.01.12

[백준/그리디/C++] 1744번 수 묶기

https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 문제풀이 방법 1. 음수와 양수를 두 벡터에 따로 담는다 (0은 곱하면 0이 되므로 음수와 함께 담는다) 2. 큰 수 끼리 곱하면 수가 더 커지기 때문에 두 벡터를 정렬한다 3. 변수 tmp1을 두고 tmp1이 빈 경우 tmp1에 수를 넣고, tmp1에 수가 들어있는 경우 곱한 값을 result 에 넣어준다 (두 벡터 모두 수행) #include #include #include using nam..

728x90
반응형