게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

숙제 5-1 / test set (이종혁님께서 만드신 코드 이용)

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2010)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
홍장완



가입: 2010년 9월 15일
올린 글: 25

올리기올려짐: 2010년10월31일 2:36    주제: 숙제 5-1 / test set (이종혁님께서 만드신 코드 이용) 인용과 함께 답변

우선, 이종혁님 허락을 받지 않고 올린 것에 대해

양해를 부탁드리구요..

아래 코드를 붙여넣으신 후 실행시키시면 됩니다.

결과가

prefix-free? O
total length : O

식으로 나오는데요..

"prefix-free? #f"가 나옴 앞겹침이 있다는 뜻이고 (즉, 답이 틀렸다는)
total length는 문장을 표현하는 코드의 총 길이입니다. (짧을수록 좋은)


* 그리고 다음은 제 플그램 돌린 결과입니다;
prefix-free? #t
total length : 672
prefix-free? #t
total length : 1022
prefix-free? #t
total length : 15011
prefix-free? #t
total length : 143022
prefix-free? #t
total length : 15442879



-------------------------------------------------
(define (pfree? lst) ;prefix-free check
(define (chk lst n m)
(define (bikyo x lst)
(if (null? x) #t (and (not (equal? (reverse x) lst)) (bikyo (cdr x) lst))))
(define x (quotient n m))
(define y (remainder (+ n 1 (* 2 x)) (+ m 1)))
(if (< n 0) #t (and (bikyo (reverse (list-ref lst x)) (list-ref lst y)) (chk lst (- n 1) m))))
(define l (- (length lst) 1))
(chk (map (lambda (t) (cdr t)) lst) (+ l (* l l) -1) l))
(define (testing lst) ;;;
(define sol (vlencode lst))
(define (eval lst sol)
(foldr + 0 (foldr append () (map (lambda (x) (map (lambda (y) (if (equal? (car x) (car y)) (* (cdr x) (length (cdr y))) 0)) sol)) lst))))
(begin
(display "prefix-free? ") (display (pfree? sol)) (newline)
(display "total length : ") (display (eval lst sol)) (newline)))
;;;
(define data1 (list (cons "1" 1) (cons "2" 1) (cons "3" 1) (cons "4" 1) (cons "5" 1) (cons "6" 1) (cons "7" 1) (cons "8" 1) (cons "9" 1) (cons "10" 1) (cons "11" 1) (cons "12" 1) (cons "13" 1) (cons "14" 1) (cons "15" 1) (cons "16" 1) (cons "17" 1) (cons "18" 1) (cons "19" 1) (cons "20" 1) (cons "21" 1) (cons "22" 1) (cons "23" 1) (cons "24" 1) (cons "25" 1) (cons "26" 1) (cons "27" 1) (cons "28" 1) (cons "29" 1) (cons "30" 1) (cons "31" 1) (cons "32" 1) (cons "33" 1) (cons "34" 1) (cons "35" 1) (cons "36" 1) (cons "37" 1) (cons "38" 1) (cons "39" 1) (cons "40" 1) (cons "41" 1) (cons "42" 1) (cons "43" 1) (cons "44" 1) (cons "45" 1) (cons "46" 1) (cons "47" 1) (cons "48" 1) (cons "49" 1) (cons "50" 1) (cons "51" 1) (cons "52" 1) (cons "53" 1) (cons "54" 1) (cons "55" 1) (cons "56" 1) (cons "57" 1) (cons "58" 1) (cons "59" 1) (cons "60" 1) (cons "61" 1) (cons "62" 1) (cons "63" 1) (cons "64" 1) (cons "65" 1) (cons "66" 1) (cons "67" 1) (cons "68" 1) (cons "69" 1) (cons "70" 1) (cons "71" 1) (cons "72" 1) (cons "73" 1) (cons "74" 1) (cons "75" 1) (cons "76" 1) (cons "77" 1) (cons "78" 1) (cons "79" 1) (cons "80" 1) (cons "81" 1) (cons "82" 1) (cons "83" 1) (cons "84" 1) (cons "85" 1) (cons "86" 1) (cons "87" 1) (cons "88" 1) (cons "89" 1) (cons "90" 1) (cons "91" 1) (cons "92" 1) (cons "93" 1) (cons "94" 1) (cons "95" 1) (cons "96" 1) (cons "97" 1) (cons "98" 1) (cons "99" 1) (cons "100" 1)))

(define data2 (list (cons "1" 1) (cons "2" 1) (cons "3" 2) (cons "4" 2) (cons "5" 2) (cons "6" 1) (cons "7" 1) (cons "8" 1) (cons "9" 2) (cons "10" 2) (cons "11" 2) (cons "12" 2) (cons "13" 1) (cons "14" 2) (cons "15" 1) (cons "16" 2) (cons "17" 2) (cons "18" 1) (cons "19" 2) (cons "20" 1) (cons "21" 1) (cons "22" 2) (cons "23" 1) (cons "24" 1) (cons "25" 1) (cons "26" 2) (cons "27" 1) (cons "28" 2) (cons "29" 1) (cons "30" 1) (cons "31" 2) (cons "32" 1) (cons "33" 2) (cons "34" 1) (cons "35" 1) (cons "36" 2) (cons "37" 1) (cons "38" 1) (cons "39" 2) (cons "40" 1) (cons "41" 2) (cons "42" 2) (cons "43" 2) (cons "44" 1) (cons "45" 2) (cons "46" 1) (cons "47" 2) (cons "48" 2) (cons "49" 2) (cons "50" 2) (cons "51" 1) (cons "52" 1) (cons "53" 1) (cons "54" 2) (cons "55" 2) (cons "56" 2) (cons "57" 1) (cons "58" 2) (cons "59" 1) (cons "60" 1) (cons "61" 1) (cons "62" 1) (cons "63" 2) (cons "64" 2) (cons "65" 2) (cons "66" 2) (cons "67" 2) (cons "68" 2) (cons "69" 1) (cons "70" 1) (cons "71" 2) (cons "72" 1) (cons "73" 1) (cons "74" 2) (cons "75" 1) (cons "76" 2) (cons "77" 1) (cons "78" 1) (cons "79" 2) (cons "80" 1) (cons "81" 2) (cons "82" 2) (cons "83" 2) (cons "84" 2) (cons "85" 2) (cons "86" 2) (cons "87" 2) (cons "88" 2) (cons "89" 1) (cons "90" 2) (cons "91" 1) (cons "92" 1) (cons "93" 1) (cons "94" 2) (cons "95" 2) (cons "96" 2) (cons "97" 1) (cons "98" 2) (cons "99" 1) (cons "100" 2)))

(define data3 (list (cons "1" 18) (cons "2" 18) (cons "3" 9) (cons "4" 14) (cons "5" 16) (cons "6" 6) (cons "7" 7) (cons "8" 2) (cons "9" 16) (cons "10" 1) (cons "11" 3) (cons "12" 20) (cons "13" 16) (cons "14" 6) (cons "15" 20) (cons "16" 19) (cons "17" 20) (cons "18" 6) (cons "19" 3) (cons "20" 1) (cons "21" 19) (cons "22" 3) (cons "23" 5) (cons "24" 7) (cons "25" 16) (cons "26" 3) (cons "27" 7) (cons "28" 10) (cons "29" 17) (cons "30" 14) (cons "31" 11) (cons "32" 17) (cons "33" 10) (cons "34" 8) (cons "35" 15) (cons "36" 1) (cons "37" 6) (cons "38" 5) (cons "39" 9) (cons "40" 6) (cons "41" 3) (cons "42" 7) (cons "43" 6) (cons "44" 5) (cons "45" 19) (cons "46" 13) (cons "47" 15) (cons "48" 11) (cons "49" 2) (cons "50" 12) (cons "51" 8) (cons "52" 20) (cons "53" 8) (cons "54" 10) (cons "55" 11) (cons "56" 2) (cons "57" 19) (cons "58" 14) (cons "59" 6) (cons "60" 16) (cons "61" 19) (cons "62" 16) (cons "63" 7) (cons "64" 9) (cons "65" 10) (cons "66" 15) (cons "67" 13) (cons "68" 20) (cons "69" 18) (cons "70" 14) (cons "71" 5) (cons "72" 3) (cons "73" 3) (cons "74" 1) (cons "75" 15) (cons "76" 15) (cons "77" 11) (cons "78" 16) (cons "79" 16) (cons "80" 4) (cons "81" 10) (cons "82" 16) (cons "83" 12) (cons "84" 2) (cons "85" 18) (cons "86" 13) (cons "87" 7) (cons "88" 1) (cons "89" 3) (cons "90" 5) (cons "91" 16) (cons "92" 13) (cons "93" 1) (cons "94" 11) (cons "95" 12) (cons "96" 15) (cons "97" 2) (cons "98" 7) (cons "99" 16) (cons "100" 12) (cons "101" 3) (cons "102" 20) (cons "103" 20) (cons "104" 1) (cons "105" 1) (cons "106" 18) (cons "107" 16) (cons "108" 8) (cons "109" 1) (cons "110" 12) (cons "111" 5) (cons "112" 14) (cons "113" 8) (cons "114" 2) (cons "115" 12) (cons "116" 12) (cons "117" 9) (cons "118" 20) (cons "119" 13) (cons "120" 12) (cons "121" 4) (cons "122" 6) (cons "123" 3) (cons "124" 3) (cons "125" 11) (cons "126" 18) (cons "127" 3) (cons "128" 14) (cons "129" 13) (cons "130" 4) (cons "131" 5) (cons "132" 17) (cons "133" 15) (cons "134" 9) (cons "135" 15) (cons "136" 14) (cons "137" 14) (cons "138" 14) (cons "139" 1) (cons "140" 1) (cons "141" 13) (cons "142" 12) (cons "143" 14) (cons "144" 4) (cons "145" 8) (cons "146" 10) (cons "147" 12) (cons "148" 2) (cons "149" 5) (cons "150" 18) (cons "151" 1) (cons "152" 14) (cons "153" 13) (cons "154" 14) (cons "155" 8) (cons "156" 2) (cons "157" 5) (cons "158" 16) (cons "159" 14) (cons "160" 9) (cons "161" 19) (cons "162" 18) (cons "163" 9) (cons "164" 4) (cons "165" 6) (cons "166" 18) (cons "167" 18) (cons "168" 2) (cons "169" 15) (cons "170" 12) (cons "171" 4) (cons "172" 2) (cons "173" 3) (cons "174" 19) (cons "175" 1) (cons "176" 8) (cons "177" 16) (cons "178" 1) (cons "179" 10) (cons "180" 19) (cons "181" 18) (cons "182" 3) (cons "183" 6) (cons "184" 16) (cons "185" 10) (cons "186" 9) (cons "187" 4) (cons "188" 19) (cons "189" 19) (cons "190" 19) (cons "191" 3) (cons "192" 1) (cons "193" 3) (cons "194" 4) (cons "195" 16) (cons "196" 11) (cons "197" 15) (cons "198" 4) (cons "199" 10) (cons "200" 16)))

(define data4 (list (cons "1" 131) (cons "2" 12) (cons "3" 143) (cons "4" 140) (cons "5" 32) (cons "6" 156) (cons "7" 142) (cons "8" 120) (cons "9" 136) (cons "10" 46) (cons "11" 156) (cons "12" 14) (cons "13" 27) (cons "14" 74) (cons "15" 154) (cons "16" 106) (cons "17" 45) (cons "18" 67) (cons "19" 199) (cons "20" 7) (cons "21" 39) (cons "22" 22) (cons "23" 128) (cons "24" 118) (cons "25" 195) (cons "26" 25) (cons "27" 69) (cons "28" 56) (cons "29" 114) (cons "30" 101) (cons "31" 4) (cons "32" 145) (cons "33" 6) (cons "34" 62) (cons "35" 51) (cons "36" 42) (cons "37" 79) (cons "38" 104) (cons "39" 114) (cons "40" 70) (cons "41" 72) (cons "42" 192) (cons "43" 118) (cons "44" 145) (cons "45" 169) (cons "46" 171) (cons "47" 181) (cons "48" 169) (cons "49" 111) (cons "50" 62) (cons "51" 44) (cons "52" 95) (cons "53" 57) (cons "54" 142) (cons "55" 150) (cons "56" 53) (cons "57" 71) (cons "58" 127) (cons "59" 145) (cons "60" 27) (cons "61" 168) (cons "62" 149) (cons "63" 71) (cons "64" 140) (cons "65" 133) (cons "66" 125) (cons "67" 188) (cons "68" 11) (cons "69" 160) (cons "70" 185) (cons "71" 173) (cons "72" 110) (cons "73" 111) (cons "74" 123) (cons "75" 94) (cons "76" 130) (cons "77" 126) (cons "78" 85) (cons "79" 118) (cons "80" 44) (cons "81" 68) (cons "82" 149) (cons "83" 32) (cons "84" 176) (cons "85" 34) (cons "86" 159) (cons "87" 54) (cons "88" 32) (cons "89" 157) (cons "90" 179) (cons "91" 106) (cons "92" 157) (cons "93" 137) (cons "94" 107) (cons "95" 3) (cons "96" 180) (cons "97" 8) (cons "98" 21) (cons "99" 85) (cons "100" 165) (cons "101" 159) (cons "102" 72) (cons "103" 154) (cons "104" 12) (cons "105" 200) (cons "106" 50) (cons "107" 176) (cons "108" 69) (cons "109" 113) (cons "110" 77) (cons "111" 95) (cons "112" 187) (cons "113" 155) (cons "114" 142) (cons "115" 183) (cons "116" 191) (cons "117" 116) (cons "118" 131) (cons "119" 80) (cons "120" 23) (cons "121" 160) (cons "122" 30) (cons "123" 57) (cons "124" 40) (cons "125" 4) (cons "126" 8) (cons "127" 155) (cons "128" 85) (cons "129" 61) (cons "130" 56) (cons "131" 81) (cons "132" 119) (cons "133" 186) (cons "134" 144) (cons "135" 66) (cons "136" 96) (cons "137" 32) (cons "138" 107) (cons "139" 25) (cons "140" 19) (cons "141" 14) (cons "142" 188) (cons "143" 158) (cons "144" 39) (cons "145" 35) (cons "146" 94) (cons "147" 93) (cons "148" 181) (cons "149" 17) (cons "150" 141) (cons "151" 69) (cons "152" 137) (cons "153" 182) (cons "154" 109) (cons "155" 41) (cons "156" 183) (cons "157" 89) (cons "158" 55) (cons "159" 128) (cons "160" 7) (cons "161" 26) (cons "162" 156) (cons "163" 160) (cons "164" 10) (cons "165" 43) (cons "166" 188) (cons "167" 50) (cons "168" 180) (cons "169" 97) (cons "170" 107) (cons "171" 82) (cons "172" 33) (cons "173" 87) (cons "174" 36) (cons "175" 3) (cons "176" 27) (cons "177" 161) (cons "178" 21) (cons "179" 31) (cons "180" 188) (cons "181" 86) (cons "182" 124) (cons "183" 122) (cons "184" 82) (cons "185" 74) (cons "186" 41) (cons "187" 98) (cons "188" 53) (cons "189" 26) (cons "190" 92) (cons "191" 104) (cons "192" 67) (cons "193" 173) (cons "194" 169) (cons "195" 134) (cons "196" 7) (cons "197" 41) (cons "198" 41) (cons "199" 69) (cons "200" 8)))

(define data5 (list (cons "1" 87) (cons "2" 15488) (cons "3" 984) (cons "4" 490) (cons "5" 3766) (cons "6" 11899) (cons "7" 2954) (cons "8" 13167) (cons "9" 9342) (cons "10" 18856) (cons "11" 8182) (cons "12" 13818) (cons "13" 4882) (cons "14" 18276) (cons "15" 6638) (cons "16" 1304) (cons "17" 15055) (cons "18" 5428) (cons "19" 12975) (cons "20" 11331) (cons "21" 399) (cons "22" 16566) (cons "23" 10161) (cons "24" 18949) (cons "25" 18464) (cons "26" 13089) (cons "27" 4871) (cons "28" 10517) (cons "29" 4046) (cons "30" 5203) (cons "31" 780) (cons "32" 6943) (cons "33" 7613) (cons "34" 10870) (cons "35" 12857) (cons "36" 15213) (cons "37" 4295) (cons "38" 1422) (cons "39" 11178) (cons "40" 13129) (cons "41" 14214) (cons "42" 2395) (cons "43" 10610) (cons "44" 3522) (cons "45" 19790) (cons "46" 18494) (cons "47" 8728) (cons "48" 9187) (cons "49" 9902) (cons "50" 9841) (cons "51" 4740) (cons "52" 14633) (cons "53" 10280) (cons "54" 12613) (cons "55" 5175) (cons "56" 1631) (cons "57" 18833) (cons "58" 15973) (cons "59" 19425) (cons "60" 18355) (cons "61" 15890) (cons "62" 7962) (cons "63" 18547) (cons "64" 8179) (cons "65" 13066) (cons "66" 951) (cons "67" 3610) (cons "68" 9152) (cons "69" 10520) (cons "70" 6905) (cons "71" 465) (cons "72" 9232) (cons "73" 6344) (cons "74" 19369) (cons "75" 13025) (cons "76" 9060) (cons "77" 19994) (cons "78" 17384) (cons "79" 7648) (cons "80" 8618) (cons "81" 3273) (cons "82" 8723) (cons "83" 6620) (cons "84" 3670) (cons "85" 16794) (cons "86" 895) (cons "87" 16837) (cons "88" 10464) (cons "89" 2668) (cons "90" 17501) (cons "91" 17641) (cons "92" 18626) (cons "93" 16609) (cons "94" 19314) (cons "95" 7867) (cons "96" 2512) (cons "97" 7506) (cons "98" 1590) (cons "99" 2682) (cons "100" 18135) (cons "101" 13) (cons "102" 18076) (cons "103" 3722) (cons "104" 8104) (cons "105" 8194) (cons "106" 9832) (cons "107" 13598) (cons "108" 18897) (cons "109" 15395) (cons "110" 6744) (cons "111" 10426) (cons "112" 12958) (cons "113" 18963) (cons "114" 13797) (cons "115" 12388) (cons "116" 19051) (cons "117" 19683) (cons "118" 1870) (cons "119" 14383) (cons "120" 15615) (cons "121" 15014) (cons "122" 17548) (cons "123" 18777) (cons "124" 4345) (cons "125" 14747) (cons "126" 17899) (cons "127" 10876) (cons "128" 18007) (cons "129" 9281) (cons "130" 13859) (cons "131" 8724) (cons "132" 1381) (cons "133" 334) (cons "134" 5092) (cons "135" 15121) (cons "136" 1671) (cons "137" 1173) (cons "138" 15645) (cons "139" 17840) (cons "140" 5625) (cons "141" 16891) (cons "142" 4489) (cons "143" 19822) (cons "144" 14033) (cons "145" 17819) (cons "146" 16322) (cons "147" 2320) (cons "148" 3019) (cons "149" 1348) (cons "150" 437) (cons "151" 17735) (cons "152" 11009) (cons "153" 17947) (cons "154" 9687) (cons "155" 10413) (cons "156" 3115) (cons "157" 11923) (cons "158" 9323) (cons "159" 15060) (cons "160" 12962) (cons "161" 9444) (cons "162" 18972) (cons "163" 17081) (cons "164" 11729) (cons "165" 16141) (cons "166" 15032) (cons "167" 18141) (cons "168" 13975) (cons "169" 16108) (cons "170" 12803) (cons "171" 16780) (cons "172" 5406) (cons "173" 2770) (cons "174" 11364) (cons "175" 5299) (cons "176" 16179) (cons "177" 9958) (cons "178" 449) (cons "179" 14399) (cons "180" 2899) (cons "181" 7912) (cons "182" 8328) (cons "183" 16717) (cons "184" 14301) (cons "185" 5887) (cons "186" 9275) (cons "187" 19386) (cons "188" 4749) (cons "189" 13004) (cons "190" 1292) (cons "191" 653) (cons "192" 14169) (cons "193" 7611) (cons "194" 17352) (cons "195" 5571) (cons "196" 16934) (cons "197" 3412) (cons "198" 4206) (cons "199" 2684) (cons "200" 19499)))

(testing data1)
(testing data2)
(testing data3)
(testing data4)
(testing data5)
위로
사용자 정보 보기 비밀 메시지 보내기
김태훈



가입: 2010년 9월 6일
올린 글: 91

올리기올려짐: 2010년10월31일 9:30    주제: 인용과 함께 답변

감사합니다 ㅋㅋ 결과값은 저도 똑같이 나오네요 ㅋㅋ



근데 시간이 조금 걸려서 무한루프인줄 알고 식겁했단..ㅎㅎ


김태훈 가 2010년10월31일 11:29에 수정함, 총 1 번 수정됨
위로
사용자 정보 보기 비밀 메시지 보내기
이영준



가입: 2010년 9월 6일
올린 글: 31

올리기올려짐: 2010년10월31일 10:31    주제: 인용과 함께 답변

감사합니다~
위로
사용자 정보 보기 비밀 메시지 보내기
이소정



가입: 2010년 9월 22일
올린 글: 6

올리기올려짐: 2010년10월31일 13:43    주제: 인용과 함께 답변

감사합니다~~
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2010) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay