Algorithm/UVa 썸네일형 리스트형 10038 - Jolly Jumpers 문제 원문 : http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=979 맨 먼저 입력받을 수의 갯수를 입력받고 그만큼 배열에 입력받는다.입력받으면서 이웃한 두 수의 차이만큼을 또다른 배열에 입력을 하고, 입력이 끝나는 시점에서 이웃간의 차이 배열을 정열 하고, 1부터 n-1까지 무든 수가 존재하는지 체크 한다.만약 중간에 틀리면 반복문을 종료하고 Not jolly를 출력하도록 하고 n-1까지 존재하면 Jolly를 출력하도록 한다. 출력결과 : UVa결과:#include #include int compare(const void *a, const void *b){ int *pa = (int.. 더보기 102 - Ecological Bin Packing 문제원문 : http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=38 빈병을 재활용 하기 위하여 3개의 상자에 각각 상자마다 갈색(brown), 녹색(green), 투명(clear) 순으로 순서대로 병을 넣고, 각각의 상자에 한가지 종류의 병만 들어 가도록 다시 정리를 하려고 할 때 병을 옮기는 행동을 가장 적게 하도록 하는 정렬 순서를 구하는 문제로 마지막에는 각각의 상자에 들어가는 병의 순서를 출력하고, 옮긴 횟수를 출력 하도록 하는 문제였다.정렬을 하는 우선 순위가 알파벳 순이라는 것을 기억한다면 어렵지 않은 문제이다.#include long MoveBottle(long One[3].. 더보기 101 - The Blocks Problem 문제원문 : http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=37 이 문제는 다음과 같은 특성을 예외 처리를 잘 하면 구현 할 수 있는 문제이다.move a onto b - a와 b블럭위에 다른 블럭들을 원래 위치로 돌려 보내고 a를 b 위로 옮긴다move a over b - a블럭 위에 다른 블럭을 원래 위치로 돌려보내고 a를 b 위로 옮긴다.pile a onto b - b블럭 위에 다른 블럭을 원래 위치로 보내고 a를 b위로 옮긴다.pile a over b - a를 b블럭으로 옮긴다.quit - 최종 상태를 출력한다.같은 블럭의 명령, 같은 블럭이 있는 경우, 그외 무시한다.리스트.. 더보기 100 - The 3n + 1 problem 문제 원문 : http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=36 이 문제에서 등장하는 3n1p알고리즘은 숫자 n을 입력받아 n을 출력하고 n이 홀수 인경우 3n+1을 해주고 짝수인경우는 n/2를 해주어 1이 될때까지 반복하는 알고리즘이다. 이 문제에서는 i와 j를 입력 받고 입력받은 i와 j 그리고 i,j를 포함한 그 사이의 수들의 사이클 수 중에서 최대 값을 출력 하도록 하고 있다.#include int the3n1p(int n){ int result = 1; while (n != 1){ if (n % 2 == 1){ n *= 3; n += 1; } else{ n /= 2; } .. 더보기 이전 1 다음