www.acmicpc.net/problem/17087 17087번: 숨바꼭질 6 수빈이는 동생 N명과 숨바꼭질을 하고 있다. 수빈이는 현재 점 S에 있고, 동생은 A1, A2, ..., AN에 있다. 수빈이는 걸어서 이동을 할 수 있다. 수빈이의 위치가 X일때 걷는다면 1초 후에 X+D나 X-D로 이 www.acmicpc.net 문제 접근 방법 S 지점부터 D값을 더하거나 빼서 동생들의 위치까지 가야한다. 어떻게 하면 최대값이 될까를 생각. (S - 동생들의 위치 값)들의 최대공약수를 구하면 그 값이 D값이 될것이라고 생각. 해당 생각을 코드로 옮김. 해당 문제에 대한 코드입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ..
https://www.acmicpc.net/problem/2529 2529번: 부등호 여러분은 제시된 부등호 관계를 만족하는 k+1 자리의 최대, 최소 정수를 첫째 줄과 둘째 줄에 각각 출력해야 한다. 단 아래 예(1)과 같이 첫 자리가 0인 경우도 정수에 포함되어야 한다. 모든 입력에 답은 항상 존재하며 출력 정수는 하나의 문자열이 되도록 해야 한다. www.acmicpc.net 문제 접근 방법 부등호를 기준으로 값을 비교하면서 조건에 맞으면 문자를 더하는 형식으로 진행 문자가 특정 자릿수가 되면 vector에 집어넣어준다 0부터 시작하므로 vector 내부에 최초 값이 최소 값이고 마지막 값이 최대값임을 인지하고 진행 아래는 코드입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15..
https://www.acmicpc.net/problem/6603 6603번: 로또 문제 독일 로또는 {1, 2, ..., 49}에서 수 6개를 고른다. 로또 번호를 선택하는데 사용되는 가장 유명한 전략은 49가지 수 중 k(k>6)개의 수를 골라 집합 S를 만든 다음 그 수만 가지고 번호를 선택하는 것이다. 예를 들어, k=8, S={1,2,3,5,8,13,21,34}인 경우 이 집합 S에서 수를 고를 수 있는 경우의 수는 총 28가지이다. ([1,2,3,5,8,13], [1,2,3,5,8,21], [1,2,3,5,8,34], [1,2 www.acmicpc.net 문제 접근 방법 vector를 두개를 만들고 하나는 빈 상태로 유지 하나는 고른 숫자들을 집어 넣는다 비어 있던 vector에 숫자를 하나씩..
https://www.acmicpc.net/problem/10819 10819번: 차이를 최대로 첫째 줄에 N (3 ≤ N ≤ 8)이 주어진다. 둘째 줄에는 배열 A에 들어있는 정수가 주어진다. 배열에 들어있는 정수는 -100보다 크거나 같고, 100보다 작거나 같다. www.acmicpc.net 문제 접근 방법 배열의 정수들을 가지고 최댓값을 구해야 한다. 최대 8개까지의 숫자가 들어올 수 있기 때문에 모든 경우의 수를 구해도 메모리와 시간제한이 충분하다. vector A의 for문을 이용해 A[i] - A[i +1]의 절대값을 더한 값을 변수에 저장하고 끝까지 진행 시 next_permutation을 사용하여 다음 경우의 수에서 이를 반복한다 변수들을 비교하여 가장 큰 값을 출력한다 아래는 코드입니다..
https://www.acmicpc.net/problem/1890 1890번: 점프 문제 N×N 게임판에 수가 적혀져 있다. 이 게임의 목표는 가장 왼쪽 위 칸에서 가장 오른쪽 아래 칸으로 규칙에 맞게 점프를 해서 가는 것이다. 각 칸에 적혀있는 수는 현재 칸에서 갈 수 있는 거리를 의미한다. 반드시 오른쪽이나 아래쪽으로만 이동해야 한다. 0은 더 이상 진행을 막는 종착점이며, 항상 현재 칸에 적혀있는 수만큼 오른쪽이나 아래로 가야 한다. 한 번 점프를 할 때, 방향을 바꾸면 안 된다. 즉, 한 칸에서 오른쪽으로 점프를 하거나, 아래로 www.acmicpc.net 문제 접근 방식 최초 지점으로 부터 오른쪽 혹은 아래로 이동을 할 수 있다. 도착 지점의 입장에서 생각해보면 왼쪽에서 도착 지점으로 오거나 위..
https://www.acmicpc.net/problem/3184 3184번: 양 문제 미키의 뒷마당에는 특정 수의 양이 있다. 그가 푹 잠든 사이에 배고픈 늑대는 마당에 들어와 양을 공격했다. 마당은 행과 열로 이루어진 직사각형 모양이다. 글자 '.' (점)은 빈 필드를 의미하며, 글자 '#'는 울타리를, 'o'는 양, 'v'는 늑대를 의미한다. 한 칸에서 수평, 수직만으로 이동하며 울타리를 지나지 않고 다른 칸으로 이동할 수 있다면, 두 칸은 같은 영역 안에 속해 있다고 한다. 마당에서 "탈출"할 수 있는 칸은 어떤 영역에도 속하지 www.acmicpc.net 주어진 범위 안에 있는 각각의 울타리 내부의 양과 늑대의 수를 파악하여 조건에 따라 최종 양과 늑대 수를 출력하는 문제입니다. 아래는 코드입니..