Stable matching algorithm 구현
- 최초 등록일
- 2006.10.05
- 최종 저작일
- 2006.09
압축파일
- 가격 1,000원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
알고리즘 과목에 관련된 Stable matching Problem에 대한 프로그래밍 소스입니다.
작성은 C로 하였고, Visual C++을 이용했습니다.(다른것으로 돌려도 무관합니다)
5명의 인원이 각각 남자 여자별로 어떻게 매치되는 것이 가장 좋은것인지
짝지어주는 프로그램입니다.
컴파일 실행환경
Microsoft visual c++ / Windows XP
하지만, 소스는 platform independent하게 compile할수 있습니다.
본문내용
include <stdio.h>
int ChangeInteger(int);
int CompareAB(int, int, int, int, int[], int[], int[]);
int main() {
// mMatrix[i]는 i번째 남자를 의미, mMatrix[i][j]는 j번째 선호하는 여자를 의미
int mMatrix[5][5];
// wMatrix[i]는 i번째 여자를 의미, wMatrix[i][j]는 j번째 선호하는 남자를 의미
int wMatrix[5][5];
int mMatching[5], wMatching[5]; // 이것은 matching된 여자(mMatching), 남자(wMatching)를 저장
int now[5] = {0,0,0,0,0}; // 현재 각 번호별 남자의 가능한 여자 순위 저장
FILE *in;
int count, i,j, temp; // for loop에서 사용되는 변수
// matching_data.txt 파일에 저장되어있는 data를 각 man과 woman matrix에 넣음
in = fopen("matching_data.txt","r");
for(i=0;i<5;i++) {
for(j=0;j<5;j++) {
mMatrix[i][j] = getc(in);
mMatrix[i][j] = ChangeInteger(mMatrix[i][j]);
}
getc(in);
}
getc(in);
for(i=0;i<5;i++) {
for(j=0;j<5;j++) {
wMatrix[i][j] = getc(in);
wMatrix[i][j] = ChangeInteger(wMatrix[i][j]);
}
압축파일 내 파일목록
matching_data.txt
StableMatching.ncb
StableMatching.dsp
StableMatching.dsw
StableMatching.opt
StableMatchingProb.c
Debug/StableMatching.exe
Debug/StableMatching.ilk
Debug/StableMatching.pch
Debug/StableMatching.pdb
Debug/StableMatchingProb.obj
Debug/vc60.idb
Debug/vc60.pdb
참고 자료
없음