본문 바로가기

알고리즘

(7)
연습문제 13번 : 난수발생, 정수 갯수 세기 #include #include void display(int occurList[], int size); void validateNum(int numList[], int occurList[], int occurListSize); void display(int occurList[], int size){ int i = 0; for (i = 0 ; i < size ; i ++) if (occurList[i] != 0) printf("%d 는%d 번있었습니다.\n", i+1, occurList[i]); } void validateNum(int numList[], int occurList[], int occurListSize){ int i, temp; for (i = 0 ; i < 7 ; i ++){ temp =..
2차원 배열의 사용과 값비교를 통한 최대값 구하기... 후후.. 사용 언어가 다를뿐이지.. 상당히 쉬운내용을 배운다.. 하지만 아직 포인터라는 개념은 안드로메다.. 쓰다보면 괜찮아 지겠지 ㄲㄲ #include #include int main(void){ int i, j; int sum[12] = {0}; int max = 0; int sales[10][12]; for(i = 0; i
배열과 포인터를 활용한 Bubble Sort 알고리즘 #include #define MAX_SIZE 100 void bubbleSort(int array[], int size); void swap(int* base, int* target); void displayArray(int array[], int size); void bubbleSort(int array[], int size){ int i, j; for(i = 0; i < size ; i++) { for(j = 0; j < i ; j++) if (array[i] < array[j]) swap(&array[i], &array[j]); } displayArray(array, size); } void displayArray(int array[], int size){ int i; for(i = 0; i < ..
퀴즈 3. 여행(The Trip) : 풀었습니다. 일 년에 한 번씩 다른 여행지로 여행을 가는 학생 모임이 있다. 그 학생들은 지금까지 인디애나폴리스, 피닉스, 내시빌, 필라델피아, 산호세, 아틀란타를 여행했다. 이번 봄에는 아인트호벤으로 여행을 갈 계획이다. 이 학생들은 여행 경비를 모두 똑같이 부담하기로 합의했지만 돈을 쓸 때마다 나눠서 내는 것은 별로 실용적이지 못하다. 그래서 한 명씩 식비, 호텔비, 택시비, 비행기표를 부담하기로 한다. 여행이 끝난 후에 각 학생이 지출한 내역을 계산한 다음 1센트 단위 내에서 모든 학생들이 쓴 돈이 같도록 돈을 주고 받는다. 하지만 이전 여행의 경험에 비추어보면 돈을 주고 받는 과정은 정말 지루하고 오랜 시간을 요하는 작업이었다. 지출 내역이 주어졌을 때 모든 학생이 쓴 돈이 (1센트 단위 내에서) 똑같아지기 ..
개미책 연습문제 다 풀었습니다 'ㅡ' 약간 막히는 문제도 있었지만 대체로 쉬운편이네요- 소스코드도 짤막짤막해서 파일로 안올리고.. 그냥 올리도록 할게요. import java.util.Scanner; public class Excercise_224 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int num1 = input.nextInt(); int num2 = input.nextInt(); int num3 = input.nextInt(); int num4 = input.nextInt(); int num5 = input.nextInt(); int Max_memory = 0; if (num1 > Max_memory) Max_memory = n..
12. 20. 알고리즘 스터디 오늘은 알고리즘을 공부하는 시간이었습니다. 굉장히 어려워보이는.. 이름도 'Algorithm Training Book' 이름만 들어도 무시무시해 보였지만.. 다들 열심히 하는 모습에 저도 분발했습니다 -ㅅ-/ 어김없이 팀원들은 열심히 하는 모습이었습니다. 누구하나 할 것없이 굉장히 열심히 했습니다. 특히 1학년 친구들이 열심히 하는모습을 보노라면 저를 가만히 있지 못하게 했습죠.. '1학년이 저렇게 하는데...' 라기보다는 열심히 하는 효과는 또 다른 시너지를 창출해 내는 기분이었습니다. 제가 열심히 하는 모습을 보이면 다른사람도 열심히 해서 무언가를 얻어 갈 수 있겠드라구요 ^^ 공부를 하는것도 공부를 하는거지만, 사람을 만나고 모습은 담는 것도 즐거운 취미가 되어버렸습니다. 오늘 알고리즘 공부를 하고..
Zerry82의 신나는 알고리즘 시간! 1st, QuizTest 아래의 문제를 풀어보았습니다. 알고리즘 첫번째 시간에 테스트 해본 내용인데.. 다들 순식간에 끝내셔서 좀 당황하긴 했지만 'ㅅ';;; 저도 결국에는 저녁먹고 나서.. 풀었습니다 ㅋ_ㅋ 물론 zerry82님 처럼 획기적인 시간 단축은 안되도.. 확실히 원하는 값이 나오긴 하네요. 어떤 수열을 만들어내는 다음과 같은 알고리즘을 생각해보자. 어떤 정수 n에서 시작해 n이 짝수면 2로 나누고, 홀수면 3을 곱한 다음 1을 더한다. 이렇게 해서 새로 만들어진 숫자를 n으로 놓고 n=1이 될때까지 같은 작업을 계속 반복한다. 예를 들어, n=22이면 다음과 같은 수열이 만들어 진다. 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 아직 증명되진 않았지만 모든 정수 n에 대해 이 알고리즘..