728x90
void moveLeftup(int map[20][20]) {
int minX=99, minY=99;
int i,j;
int graph2[20][20];
for(i=0;i<n;i++){
for(j=0;j<n;j++){
graph2[i][j]=0; // 임시 graph2 초기화
}
}
for(i=0;i<n;i++) {
for(j=0;j<n;j++) {
if(map[i][j]) { // 왼쪽 위로 옮기기 위해 X, Y 최소값 찾음
if(minX>i) minX=i;
if(minY>j) minY=j;
}
}
}
for(i=minX;i<n;i++) {
for(j=minY;j<n;j++) {
graph2[i-minX][j-minY] = map[i][j]; // map을 graph로 왼쪽 위로 이동
}
}
for(i=0;i<2n;i++){
for(j=0;j<n;j++){
map[i][j] = graph2[i][j]; // 다시 graph를 map으로 저장
}
}
}
728x90
'Algorithm' 카테고리의 다른 글
log3(10) 계산 소스 (0) | 2013.10.31 |
---|---|
소인수분해 소스 (0) | 2013.10.31 |
2차원 배열 회전 (0) | 2013.04.16 |
퀵소트 문제 (0) | 2013.04.07 |
재귀 없는 퀵소트 (non recursive quick sort) (0) | 2013.04.07 |