전체 글 (15) 썸네일형 리스트형 행복 유치원_백준 13164_파이썬 https://www.acmicpc.net/problem/13164 13164번: 행복 유치원 행복 유치원 원장인 태양이는 어느 날 N명의 원생들을 키 순서대로 일렬로 줄 세우고, 총 K개의 조로 나누려고 한다. 각 조에는 원생이 적어도 한 명 있어야 하며, 같은 조에 속한 원생들은 서로 www.acmicpc.net 유치원생들을 그룹으로 나눠서 키차이만큼의 비용이 발생하는 문제이다. 조건중에 그룹마다 인원이 같을 필요가 없는게 중요했던 것 같다. 예제처럼 1, 3, 5, 6, 10이 있다면 (1,3) (5,6) (10)이 된다 이때 3~5사이의 차이값과 6~10사이의 차이값을 뺄 수 있게 된다.(k-1개의 차이값을 뺄 수 있다.) 그런식으로 키차이를 먼저 구한 후 차이가 큰 곳부터 k-1개 만큼 뺐다. .. IQ Test_백준1111 https://www.acmicpc.net/problem/1111 1111번: IQ Test 다음 수를 출력한다. 만약 다음 수가 여러 개일 경우에는 A를 출력하고, 다음 수를 구할 수 없는 경우에는 B를 출력한다. www.acmicpc.net n이 은 1~50인 자연수로 들어오는 숫자의 개수이다 n이 3보다 작은 경우에는 1,2가 있는데 1인경우에는 다음수가 어떤수가 올지 모르기 때문에 모든 수가 가능하다고 보고 A를 출력한다 2인 경우에도 a에 따라 b를 변화시키면 여러가지 경우의 수가 오기 때문에 A를 출력하지만 입력받은 두개의 수가 같다면 같은수가 계속 와야 하기 때문에 들어온 숫자를 출력한다 그 외인 경우에는 규칙을 찾아야 하는데 입력받은 숫자들의 차이로 배율 a를 구하고 여기서 구한 값을 이용.. 오리_백준12933 https://www.acmicpc.net/problem/12933 12933번: 오리 첫째 줄에 영선이가 녹음한 소리가 주어진다. 소리의 길이는 5보다 크거나 같고, 2500보다 작거나 같은 자연수이고, 'q','u','a','c','k'로만 이루어져 있다. www.acmicpc.net 오리의 울음소리가 섞인 소리를 듣고 오리의 수가 최저인 경우를 구하는 문제 오리의 울음소리는 'quack' 순서로 들리고 한마리가 여러번 우는게 가능하다 녹음된 울음소리에서 quack를 순서대로 돌리면서 다빼준후 남은 문자열에 이 동작을 반복한 횟수가 오리의 수(올바른 녹음일 경우) quack순서로 지우면서 quack순서로 지울 수 없는 경우가 있다면 잘못 녹음된 경우라 -1 #define _CRT_SECURE_NO_W.. 퇴사_백준14501 https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net DP문제인것 같기는 한데 뒤에 있는 값을 사용하여 구하는 것이 더 편한것 같아 뒤에서부터 앞으로 가는 다이나믹프로그래밍으로 풀었습니다. 경우의 수는 3가지 : 상담을 끝낼 수 없다, 상담을 끝낼 수 있지만 상담을 안한다, 상담을 한다 상담을 끝낼 수 없다 : 현재 위치의 오른쪽에 있는 DP의 값이 항상 최대치의 값이므로 오른쪽의 값 상담을 한다 :상담이 끝난뒤에 얻을 수 있는 최대값과 오늘 상담으로 벌게될 돈의 합 상담을 하지 않는다 : 상담을 하지 않으므로 뒤에 벌게될 돈의 최대값과 동일 상담을 하는것과 안하는 것의 비교는 현재 D.. 나이트의 이동_백준7562 https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 큐에 나이트가 이동할 수 있는 경우를 모두 입력하고 입력받은 순서대로 다음으로 이동 가능한 경우를 큐의 제일 뒤에 계속 넣다가 원하는 좌표에 도착한 경우가 있다면 그곳의 깊이가 최소 이동횟수이다. #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include using namespace std; int zx[.. 단어수학_백준1339 https://www.acmicpc.net/problem/1339 1339번: 단어 수학 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대 www.acmicpc.net 단어를 입력 받을때 각 단어들의 개수와 위치를 숫자로 바꾸어서 AAA라면 100+10+1 이되어 111이되고 ABC라면 A위치는 100 B는 10 C는 1을 각 위치 배열에 더해준다 모두 더한값이 큰 순으로 알파벳에 큰 수를 부여해 주는것이 가장 효율적이므로 정렬하여 큰 수를 부여한다 #define _CRT_SECURE_NO_WARNINGS #include #include #include #.. 이동하기_백준11048 https://www.acmicpc.net/problem/11048 11048번: 이동하기 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 www.acmicpc.net 이동할 수 있는 경우의 수는 x , y 좌표 둘다 +1 또는 둘중 하나만 +1인 경우이다 각 좌표에 도착했을때 3가지 경우를 비교하여 가장 큰 수를 지정해 주면 최종적으로 목표 좌표에 제일 많은 사탕을 가지고 갔을 때의 개수를 구할 수 있다. #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #i.. 경비원_백준2564 https://www.acmicpc.net/problem/2564 2564번: 경비원 첫째 줄에 블록의 가로의 길이와 세로의 길이가 차례로 주어진다. 둘째 줄에 상점의 개수가 주어진다. 블록의 가로의 길이와 세로의 길이, 상점의 개수는 모두 100이하의 자연수이다. 이어 한 줄 www.acmicpc.net #define _CRT_SECURE_NO_WARNINGS #include #include #include int p1[102]; int p2[102]; int p3[102]; int main() { int n, x, y; int sum = 0; scanf("%d%d", &x,&y); int r = x*2 + y*2; scanf("%d", &n); for (int i = 0; i r / 2) l = r .. 이전 1 2 다음