U E D R , A S I H C RSS

데블스캠프2005/RUR-PLE/정수민

=0= 수정완료

~cpp 
def turn_right():
    turn_left()
    turn_left()
    turn_left()

def turn_back():
    turn_left()
    turn_left()

def muggi():
    if next_to_a_beeper():
        pick_beeper()
        muggi()
        if not front_is_clear():
            turn_left()
            move()
            turn_left()
            while not next_to_a_beeper():
                move()
            while front_is_clear():
                move()
            turn_back()
            while not next_to_a_beeper():
                move()
            turn_right()
            move()
            turn_left()
            put_beeper()
        else:
            move()
            put_beeper()
    else:
        if front_is_clear():
            move()
            muggi()

while front_is_clear():
    if next_to_a_beeper():
        while front_is_clear():
            move()
        turn_left()
        move()
        turn_left()
        muggi()
        turn_back()
    else:
        move()
turn_off()
 

원본-

~cpp 
def turn_right():
    turn_left()
    turn_left()
    turn_left()

def turn_back():
    turn_left()
    turn_left()

def muggi():
    if next_to_a_beeper():
        pick_beeper()
        banbok()
        if not front_is_clear():
            turn_left()
            move()
            turn_left()
            while not next_to_a_beeper():
                move()
            while next_to_a_beeper():
                move()
            turn_back()
            move()
            turn_right()
            while next_to_a_beeper():
                move()
            turn_left()
        put_beeper()
        move()
    else:
        if front_is_clear():
            move()
            muggi()
        ()

def banbok():
    if front_is_clear():
        move()
        muggi()

def oligi():
    while next_to_a_beeper():
        move()
    turn_left()
    move()
    turn_left()
    banbok()
    turn_back()

while front_is_clear():
    move()
    if next_to_a_beeper():
        oligi()

turn_off()

 

여기서는 처음시작할때 1개짜리가 하나라도 없으면 파토나버리는 =0=;;

암튼

버그수정 -_-)/

완성이드래요~

-_-v

남김말


오옷..멋찌오!!
재귀호출이 되면 이렇게 해보려 했으나, 재귀호출이 안되길래 (정확히는 되는데 시작지점이 바뀐다는..) 재귀호출이 지원이 안되는줄 알았다오.
음.. 아주 훌륭하오. 노벨상 감이오. >ㅁ<;; 그런데 버그가 있다오. sort1에서 작동하지 않소!! 벽에 부딛힌다오.
꽤나 강하게 부딪히는걸 보니 힘이 좋은 녀석인가보오. 이부분을 시급히 해결해주길 바라오.
어쨋든 지금까지의 노력과 수고에 경의를 표하오.
추신: 궁금한 점이 있소.muggi함수의 제일 아래 ()는 무엇을 뜻하는 것이오? 없어도 실행이 잘 되오.
-조현태-
난 돼는데 ;; sort1이 sort.wld 이맵 말하는거아냐?
먹기함수 제일밑에 ()는 수정중에 실수로 남아있던거 =0=;; 근데 저게있어두 실행이 돼긴돼는군;;;
그리고 여기서 재귀함수는 선을 그어서 그밑에있는건 무조건 실행해 더 낮은 줄에있어도 if이있으면 실행이 돼는 =0=;;

바꿨으니 질문초기화 -_-!!!

... 승한이형이 보셨으면 이렇게 말씀하셨을꺼닷.. 지긋지긋한년.. 자다가 일어나서 고치다닝; @0@~
뭐..나도 밤새 놀고있긴 하지만 말야..ㅎㅎ (대신 난 낮에 잔다우.. 이놈의 데블스..;;)
소스가 좀 줄어든것 같군..우후후..ㅎㅎ
보기 조아져쓰..ㅎㅎ 뭐 보기보다는 돌려보는 쪽을 택하니 할말은 없지만..ㅎㅎㅎ
근데 여전히 sort1은 안되는군..ㅎㅎ
sort1이거 나만 있는 맵인가..;;ㅎㅎ 그러니까 이거 sort할곳 바로 옆에 벽이 있는 맵에서는 안된다우..ㅎㅎ
맵을 올려주겠소..ㅎㅎ 빨리 고치시옷~~ㅎㅎ
Upload:sort1.wld
//추신: 러플이녀석 재귀호출이 이상한 방식으로 이루어 지는것 같다오. C를 써온 사람의 입장에서 볼때 불편하다는..

-_-)/
나도 이녀석 제귀호출이 C랑 똑같았어도 이렇게 오래걸리진않았다고 ;ㅡ;
뭔가 더 좋은 방법이 생각이났는데 =0= 코드가 길어질꺼같은니 패스 -_-;;


Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:18
Processing time 0.0918 sec