728x90
반응형

C++ 90

[백준/수학/C++] 1037번 약수

https://www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net #include using namespace std; int main(void) { ios::sync_with_stdio(0); cin.tie(0); int n; vector v; cin >> n; for(int i=0; i> x; v.push_back(x); } sort(v.begin(), v.end()); if(v.size()==1) cout

[백준/백트래킹/C++] 14888번 연산자 끼워넣기 (삼성 SW 역량 테스트 기출)

문제집: 삼성 SW 역량 테스트 기출 문제 (baekjoon) www.acmicpc.net 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 문제풀이 방법 1. 더하기, 빼기, 곱하기, 나누기를 각각 1, 2, 3, 4 로 지정하여 구별한다 2. n-1개의 연산으로 수열을 만든다 3. 계산 (처음에 음수는 생각을 못하고 maxVal = 0으로 초기화했더니 틀렸다,, 넓게 생각하기!!) input() 함수 설명 void input(){ cin >> n; for..

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

[백준/그리디/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
반응형