조회 수 587 추천 수 0 댓글 0

#include <stdio.h>

int use[20]={0}; //사용할 벽장

int open(int a, int b, int i, int u, int sum); //벽장문의 최소 이동 횟수 찾기
int minus(int num); //음수일 경우 양수로 바꿔주는 함수
int main(void)
{
	int n, a, b, u, i, result;

	scanf(" %d", &n); //벽장의 개수
	scanf(" %d %d", &a, &b); //초기에 열려있는 두 벽장
	scanf(" %d", &u); //사용할 벽장들의 순서의 길이

	for(i=0; i<u; i++)
		scanf(" %d", &use[i]); //사용할 벽장 번호

	result=open(a, b, 0, u, 0);

	printf("%d", result);

	return 0;
}
int open(int a, int b, int i, int u, int sum) //벽장문의 최소 이동 횟수 찾기
{	
	if(i>=u) //더 이상 열어야 할 문이 없을 때
		return sum;

	int len_a=open(use[i], b, i+1, u, sum+minus(a-use[i]));
	int len_b=open(a, use[i], i+1, u, sum+minus(b-use[i]));

	//printf("i=%d a=%d b=%d sum=%d len_a=%d len_b=%d \n", i, a, b, sum, len_a, len_b);

	if(len_a>len_b)
		return len_b;
	else
		return len_a;
}
int minus(int num)
{
	if(num<0) //음수일 경우 양수로 바꿔주기
		return (-1*num);

	else
		return num;
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 568
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1343
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2652
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10710
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4987
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8596
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 19233
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 38129
190 정올 - 실력키우기 - 각자리수의 역과 합(1009) 조정미 2017.12.27 485
189 정올 - 실력키우기 - 각 자리수의 합(2812) 조정미 2017.12.27 674
188 정올 - 실력키우기 - 2진수를 10진수로(숫자로 입력) 조정미 2017.12.02 1063
187 정올 - 실력키우기 - 2진수를 10진수로(문자열로 입력) 조정미 2017.12.02 177
186 정올 - 실력키우기 - 10진수를 2 8 16진수로(1534) 조정미 2017.12.16 430
185 정올 - 문제은행 - 종이 자르기(1067) 조정미 2018.06.23 248
184 정올 - 문제은행 - 십자 카드 문제(1018) - Time Limit Exceed 조정미 2018.07.07 273
183 정올 - 문제은행 - 성적 관리 프로그램(1086) 조정미 2018.06.23 426
182 정올 - 문제은행 - 생성 불능 숫자(1184) 조정미 2018.06.23 115
181 정올 - 문제은행 - 도미노(1039) 조정미 2018.06.23 253
180 정올 - 문제은행 - 닭장 전등 관리(1084) 조정미 2018.06.30 187
179 정올 - 문제은행 - 내리막길(1024) - Time Limit Exceed 조정미 2018.06.23 235
178 정올 - 문제은행 - 과자게임(1319) 조정미 2018.06.30 170
177 정올 - 문제은행 - 강아지와 병아리(1001) 조정미 2018.06.23 679
176 정올 - 문제은행 - 가장 많이 나온 자연수(1069) 조정미 2018.06.23 284
175 정올 - 문제은행 - Red and Black(1154) 조정미 2018.07.14 220
174 정수의 제곱의 결과를 출력 양태관 2013.06.22 5058
173 정수를 입력받아서, 두수의 뺄셈과 곱셈의 결과 출력 양태관 2013.06.22 6668
172 정수 세개를 입력받은 후, 곱셈 덧셈 양태관 2013.06.22 3865
171 정사각형 숫자넣기 꺼꾸로(승민) 승민 2016.07.02 239
Board Pagination Prev 1 ... 12 13 14 15 16 17 18 19 20 21 ... 26 Next
/ 26